天天看點

Java main 方法三問Java main 方法三問

Java main 方法三問

main 方法是我們能剛開始學習 Java 時接觸的第一個方法,在開發過程中我們都會直接和間接的使用到這個方法,那麼你是否考慮過這三個問題:

  1. main 方法為什麼是靜态方法?
  2. main 方法為什麼是公有方法?
  3. main 方法的傳回值為什麼是 void ?

針對上面的三個問題我分别進行一一解答。

零、main 方法為什麼是靜态方法

我們想象一下,如果 main 方法不是靜态的,那麼 JVM 在調用 main 方法前就必須先執行個體化 main 類,但是構造器可以被重載是以 JVM 就無法确認到底應該調用哪個 main 方法。并且靜态的方法和資料加載到記憶體中後就可以直接調用,而不需要先執行個體化類後才能調用執行個體化方法。簡單的說就是靜态的 main 方法會被加載到 JVM 上下文中成為可直接執行的方法。

一、main 方法為什麼是公有方法

在 Java 中定義了一些通路修飾符,程式中的每個方法都可以加上任何一種通路修飾符。對于 main 方法來說因為需要在 main 類之外的地方也能通路到是以就需要指定為公有方法。

二、main 方法的傳回值為什麼是 void

main 方法為什麼沒有傳回值其實很簡單,因為 main 傳回任何值對于程式來說沒什麼用。