Style (Java SE 25 & JDK 25)
Description: declaration: module: java.desktop, package: javax.swing.text, interface: Style
Keywords: javax.swing.text.Style interface

# Interface Style

All Superinterfaces:
  `AttributeSet, MutableAttributeSet`

All Known Implementing Classes:
  `StyleContext.NamedStyle`

public interface Style extends MutableAttributeSet
A collection of attributes to associate with an element in a document. Since these are typically used to associate character and paragraph styles with the element, operations for this are provided. Other customized attributes that get associated with the element will effectively be name-value pairs that live in a hierarchy and if a name (key) is not found locally, the request is forwarded to the parent. Commonly used attributes are separated out to facilitate alternative implementations that are more efficient.

- ## Nested Class Summary

  ### Nested classes/interfaces declared in interface AttributeSet

  `AttributeSet.CharacterAttribute, AttributeSet.ColorAttribute, AttributeSet.FontAttribute, AttributeSet.ParagraphAttribute`

- ## Field Summary

  ### Fields declared in interface AttributeSet

  `NameAttribute, ResolveAttribute`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addChangeListener(ChangeListener l)`
  Adds a listener to track whenever an attribute has been changed.
  `String`
  `getName()`
  Fetches the name of the style.
  `void`
  `removeChangeListener(ChangeListener l)`
  Removes a listener that was tracking attribute changes.

  ### Methods declared in interface AttributeSet

  `containsAttribute, containsAttributes, copyAttributes, getAttribute, getAttributeCount, getAttributeNames, getResolveParent, isDefined, isEqual`

  ### Methods declared in interface MutableAttributeSet

  `addAttribute, addAttributes, removeAttribute, removeAttributes, removeAttributes, setResolveParent`

- ## Method Details

  - ### getName

    String getName()
    Fetches the name of the style. A style is not required to be named, so `null` is returned if there is no name associated with the style.
    Returns:
      the name

  - ### addChangeListener

    void addChangeListener(ChangeListener l)
    Adds a listener to track whenever an attribute has been changed.
    Parameters:
      `l` - the change listener

  - ### removeChangeListener

    void removeChangeListener(ChangeListener l)
    Removes a listener that was tracking attribute changes.
    Parameters:
      `l` - the change listener