日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

有初学的同学问你为什么Java的main方法必须是public static void?请告诉ta!

發布時間:2024/2/28 java 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 有初学的同学问你为什么Java的main方法必须是public static void?请告诉ta! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

相信這個問題你也思考過?但是如果讓你說起來,你知道怎么敘述嗎?或者說怎么說明白。

問題:為什么Java的main方法必須是public static void?

科班出身的話,相信大家都是先學習的C 和 C++,但是在 Java 中 main 方法與前者有些細微的不同,它不會返回任何值,為什么 main 方式是 public、static、void,且聽我慢慢絮叨!

Main 方法是 Java 程序的入口,記住,我們這里不會討論 Servlet、MIDlet 和其他任何容器管理的 java 程序,在 java 核心編程中,JVM 會查找類中的 public static void main(String[]args),如果找不到該方法就拋出錯誤 NoSuchMethodError:main 程序終止。

Main 方法必須嚴格遵循它的語法規則,方法簽名必須是 public static void,參數是字符串數組類型,如果是 Java1.5 及以后的版本還可以使用可變參數:

public static void main(String... args)

原因總結:

1、main 方法必須聲明為 public、static、void,否則 JVM 沒法運行程序 。

2、如果 JVM 找不到 main 方法就拋出 NoSuchMethodError:main 異常,例如:如果你運行命令:java HelloWrold,JVM 就會在 HelloWorld.class 文件中搜索 public static void main (String[] args) 方法。

3、main 方式是程序的入口,程序執行的開始處。

4、main 方法被一個特定的線程 ”main” 運行,程序會一直運行直到 main 線程結束或者 non-daemon 線程終止。

5、當你看到“Exception in Thread main”如:Excpetion in Thread main:Java.lang.NullPointedException,意味著異常來自于 main 線程。

6、你可以聲明 main 方法使用 java1.5 的可變參數的方式如:

public static void main(String... args)

7、除了 static、void、和 public,你可以使用 final,synchronized、和 strictfp 修飾符在 main 方法的簽名中,如:

public strictfp final synchronized static void main(String[] args)

8、main 方法在 Java 可以像其他方法一樣被重載,但是 JVM 只會調用上面這種簽名規范的 main 方法。

9、你可以使用 throws 子句在方法簽名中,可以拋出任何 checked 和 unchecked 異常。

10、靜態初始化塊在 JVM 調用 main 方法前被執行,它們在類被 JVM 加載到內存的時候就被執行了。

總結

以上是生活随笔為你收集整理的有初学的同学问你为什么Java的main方法必须是public static void?请告诉ta!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。