簡體   English   中英

為什么不必用Java創建對象?

[英]Why do you not have to create an object in Java?

我正在學習Java,令我驚訝的事情之一是您沒有從類中創建對象。 例如:

class helloworld{
  public static void main(String[] args){
    System.out.println("Hello world!");
  }
}

我不明白的是,我一直認為類是對象的藍圖,而在這里您沒有創建對象,程序只是從類中運行。 是否創建了從隱式運行main方法的對象? 我並沒有很好地表達這句話,並假設我缺少某種理解-有人可以解釋嗎?

“類作為對​​象的藍圖”是描述現實的Java 101方法。 它有助於教會您什么是類和對象,但這不是全部。

一個類還是靜態代碼和數據的持有者,它們獨立於任何類實例而獨立存在。 您可以將其視為一種命名空間的全局數據。

在您的示例中, main方法本身就是這樣的靜態方法,可以在不存在任何現有對象的情況下執行,而System.out指的是一個單獨存在的對象,該對象附加到System類中的靜態變量。

如果在Java中僅使用靜態方法和變量,則該類的所有對象都共享相同的變量和方法,則不必創建對象並調用。 同樣,主要方法是代碼運行的入口點

您確實在Java中創建了對象。 static關鍵字表明變量,方法或嵌套類屬於類/超類,而不屬於對象。 main方法被聲明為靜態方法,因此可以在運行時進行訪問; 它不是對象的一部分,而是類的一部分。 JVM在運行時查找main方法。

  • 公共意味着可以從任何靜態類訪問

  • 靜態意味着你不必創建對象或其他文字沒有需要的new和你要求什么

  • 表示它不會返回值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM