import org.jetbrains.annotations.*; interface NotNullInt { void setString(@NotNull String s); } interface NonAnnotatedInt { void setString2(String s); } abstract class ParamBase { public void setString(String s) {} public void setString2(@NotNull String s) {} } abstract class ParamFail extends ParamBase implements NotNullInt { } abstract class ParamFail2 extends ParamBase implements NonAnnotatedInt { } interface NonNullEnum { @NotNull String name(); } enum NonNullEnumImpl implements NonNullEnum { a; public String toString() { return null; } }