W3cubDocs

/OpenJDK 8

Class Annotation

public class Annotation
extends Object

An Annotation object is used as a wrapper for a text attribute value if the attribute has annotation characteristics. These characteristics are:

  • The text range that the attribute is applied to is critical to the semantics of the range. That means, the attribute cannot be applied to subranges of the text range that it applies to, and, if two adjacent text ranges have the same value for this attribute, the attribute still cannot be applied to the combined range as a whole with this value.
  • The attribute or its value usually do no longer apply if the underlying text is changed.
An example is grammatical information attached to a sentence: For the previous sentence, you can say that "an example" is the subject, but you cannot say the same about "an", "example", or "exam". When the text is changed, the grammatical information typically becomes invalid. Another example is Japanese reading information (yomi).

Wrapping the attribute value into an Annotation object guarantees that adjacent text runs don't get merged even if the attribute values are equal, and indicates to text containers that the attribute should be discarded if the underlying text is modified.

Since:
1.2
See Also:
AttributedCharacterIterator

Constructors

Annotation

public Annotation(Object value)

Constructs an annotation record with the given value, which may be null.

Parameters:
value - the value of the attribute

Methods

getValue

public Object getValue()

Returns the value of the attribute, which may be null.

Returns:
the value of the attribute

toString

public String toString()

Returns the String representation of this Annotation.

Overrides:
toString in class Object
Returns:
the String representation of this Annotation

© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.