compact1, compact2, compact3
java.text.spi

## Class BreakIteratorProvider

- java.lang.Object
- - java.util.spi.LocaleServiceProvider
  - - java.text.spi.BreakIteratorProvider

-     public abstract class BreakIteratorProvider
      extends LocaleServiceProvider

  An abstract class for service providers that provide concrete implementations of the `BreakIterator` class.
  Since:
    1.6

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `BreakIteratorProvider()` | Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract BreakIterator` | `getCharacterInstance(Locale locale)` | Returns a new `BreakIterator` instance for character breaks for the given locale.
    `abstract BreakIterator` | `getLineInstance(Locale locale)` | Returns a new `BreakIterator` instance for line breaks for the given locale.
    `abstract BreakIterator` | `getSentenceInstance(Locale locale)` | Returns a new `BreakIterator` instance for sentence breaks for the given locale.
    `abstract BreakIterator` | `getWordInstance(Locale locale)` | Returns a new `BreakIterator` instance for word breaks for the given locale.

    - ### Methods inherited from class java.util.spi.LocaleServiceProvider

      `getAvailableLocales, isSupportedLocale`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BreakIteratorProvider

          protected BreakIteratorProvider()

      Sole constructor. (For invocation by subclass constructors, typically implicit.)

  - ### Method Detail

    - #### getWordInstance

          public abstract BreakIterator getWordInstance(Locale locale)

      Returns a new `BreakIterator` instance for word breaks for the given locale.
      Parameters:
        `locale` - the desired locale
      Returns:
        A break iterator for word breaks
      Throws:
        `NullPointerException` - if `locale` is null
        `IllegalArgumentException` - if `locale` isn't one of the locales returned from `getAvailableLocales()`.
      See Also:
        `BreakIterator.getWordInstance(java.util.Locale)`

    - #### getLineInstance

          public abstract BreakIterator getLineInstance(Locale locale)

      Returns a new `BreakIterator` instance for line breaks for the given locale.
      Parameters:
        `locale` - the desired locale
      Returns:
        A break iterator for line breaks
      Throws:
        `NullPointerException` - if `locale` is null
        `IllegalArgumentException` - if `locale` isn't one of the locales returned from `getAvailableLocales()`.
      See Also:
        `BreakIterator.getLineInstance(java.util.Locale)`

    - #### getCharacterInstance

          public abstract BreakIterator getCharacterInstance(Locale locale)

      Returns a new `BreakIterator` instance for character breaks for the given locale.
      Parameters:
        `locale` - the desired locale
      Returns:
        A break iterator for character breaks
      Throws:
        `NullPointerException` - if `locale` is null
        `IllegalArgumentException` - if `locale` isn't one of the locales returned from `getAvailableLocales()`.
      See Also:
        `BreakIterator.getCharacterInstance(java.util.Locale)`

    - #### getSentenceInstance

          public abstract BreakIterator getSentenceInstance(Locale locale)

      Returns a new `BreakIterator` instance for sentence breaks for the given locale.
      Parameters:
        `locale` - the desired locale
      Returns:
        A break iterator for sentence breaks
      Throws:
        `NullPointerException` - if `locale` is null
        `IllegalArgumentException` - if `locale` isn't one of the locales returned from `getAvailableLocales()`.
      See Also:
        `BreakIterator.getSentenceInstance(java.util.Locale)`

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.