Windows OS Mac OS Linux OS Windows Java VM Mac Java VM Linux Java VM Java application • JRE : Java Runtime Environment. 実行だけができるキット • JDK: Java Development Kit. 開発時に必要なキット
Point(int x, int y) { }; Point.class.getMethods(); ==> Method[11] { public final boolean Point.equals(java.lang.Object), public final java.lang.String Point.toString(), public final int Point.hashCode(), public int Point.x(), // xのgetter public int Point.y(), // yのgetter public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException, public final void java.lang.Object.wait() throws java.lang.InterruptedException, public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException, public final native java.lang.Class java.lang.Object.getClass(), public final native void java.lang.Object.notify(), public final native void java.lang.Object.notifyAll() } Recordにはコンストラクタやgetter、equalsメソッドが自動で作られるので、 イミュータブル(不変)なデータクラスが簡単に実装できるよ!
• New macOS Rendering Pipeline • macOS/AArch64 Port • Deprecate the Applet API for Removal • Strongly Encapsulate JDK Internals • Pattern Matching for switch (Preview) • Remove RMI Activation • Sealed Classes • Remove the Experimental AOT and JIT Compiler • Deprecate the Security Manager for Removal • Foreign Function & Memory API (Incubator) • Vector API (Second Incubator) • Context-Specific Deserialization Filters 37 New Features
• New macOS Rendering Pipeline • macOS/AArch64 Port • Deprecate the Applet API for Removal • Strongly Encapsulate JDK Internals • Pattern Matching for switch (Preview) • Remove RMI Activation • Sealed Classes • Remove the Experimental AOT and JIT Compiler • Deprecate the Security Manager for Removal • Foreign Function & Memory API (Incubator) • Vector API (Second Incubator) • Context-Specific Deserialization Filters 39 New Features