import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.*; import java.text.*; class Test { final class Point { private int x; private int y; public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } } final class NullityTest { private String s; private @Nullable String ns; private @NotNull String nns; public void setS(@NotNull String s) { this.s = s; } public void setS2(@Nullable String s) { this.s = s; } public void setNs(@NotNull String ns) { this.ns = ns; } public void setNs2(@Nullable String ns) { this.ns = ns; } public void setNns(@NotNull String nns) { this.nns = nns; } public void setNns2(@Nullable String nns) { this.nns = nns; } } void use(Point point) { point.setX(1); point.setY(2); if (point.getX() == 1 && point.getY() == 2) { System.out.println("ok"); } } void useNullity(NullityTest nullityTest) { nullityTest.setS(null); nullityTest.setS2(null); nullityTest.setNs(null); nullityTest.setNs2(null); nullityTest.setNns(null); nullityTest.setNns2(null); } }