Annotation Interface UsedForExternalCommunication


@Retention(RUNTIME) @Target({METHOD,CONSTRUCTOR,PARAMETER,FIELD}) public @interface UsedForExternalCommunication

Annotation indicating that a Java method, parameter, constructor or field is likely to be used for external communication, for example, they are accessed from some native code via JNI.

Methods, constructors, parameters, or fields marked with this annotation should be considered part of the public API, even if they are declared private (because the native code can access even private members). If you change them, it may require corresponding corrections in some other libraries or applications.

Author:
Daniel Alievsky