# Class InterfaceStability

java.lang.Object
org.apache.yetus.audience.InterfaceStability

@Public @Evolving public class InterfaceStability extends Object
Annotation to inform users of how much to rely on a particular package, class or method not changing over time. Currently the stability can be `InterfaceStability.Stable`, `InterfaceStability.Evolving` or `InterfaceStability.Unstable`.

- All classes that are annotated with `InterfaceAudience.Public` or `InterfaceAudience.LimitedPrivate` must have InterfaceStability annotation.
- Classes that are `InterfaceAudience.Private` are to be considered unstable unless a different InterfaceStability annotation states otherwise.
- Incompatible changes must not be made to classes marked as stable.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static @interface`
`InterfaceStability.Evolving`
Evolving, but can break compatibility at minor release (i.e.
`static @interface`
`InterfaceStability.Stable`
Can evolve while retaining compatibility for minor release boundaries.; can break compatibility only at major release (ie.
`static @interface`
`InterfaceStability.Unstable`
No guarantee is provided as to reliability or stability across any level of release granularity.

## Constructor Summary

Constructors
Constructor
Description
`InterfaceStability()`

## Method Summary

### Methods inherited from class Object

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

## Constructor Details

### InterfaceStability

public InterfaceStability()