S-JIS[2023-09-23/2024-03-22] 変更履歴
Java21〜22のmainメソッド簡略化(プレビュー版)について。
2023/9/19にリリースされたJava21で、プレビュー版としてmainメソッドが簡略化できるようになった。
従来は、javaコマンドによって実行が開始されるメソッドは、「public static void main(String[])
」だった。
(JDK1.5(Java5)で、引数には「String...
」も可能になったが)
これに対し、public・staticおよび引数(String[])を省略できるようになる。
また、クラスを定義せずにmainメソッドだけでコンパイルできるようになる。
mainメソッド簡略化はJava21〜22ではプレビュー版の機能なので、この機能を使いたい場合はコンパイル時にjavacコマンドに--enable-previewを付ける必要があり、
また、実行時にjavaコマンドに--enable-previewを付ける必要がある。
JShellで試す場合もjshellコマンドに--enable-previewを付ける。
> javac --enable-preview --release 21 Example.java > java --enable-preview Example
> java --enable-preview --source 21 Example.java
mainメソッドの例。
パターン | 例 | 備考 |
---|---|---|
基本(Main.javaのMainクラスを定義) | public class Main { |
|
クラス定義を省略 | public static void main(String[] args) { |
Main.javaにこれを書いている場合、 コンパイルするとMain.classが生成される。 |
mainメソッドのpublic・static・引数を省略 | void main() { |