為什麼在 Java 類的 main 方法中不能使用“this”關鍵字?
靜態方法屬於該類,並且將與類一起載入到記憶體中。你無需建立物件就可以呼叫它們(使用類名作為引用)。
示例
public class Sample{
static int num = 50;
public static void demo(){
System.out.println("Contents of the static method");
}
public static void main(String args[]){
Sample.demo();
}
}輸出
Contents of the static method
“this”關鍵字用作對例項的引用。由於靜態方法不包含任何例項,因此無法在靜態方法中使用“this”引用。如果仍然嘗試這樣做,則會生成編譯時錯誤。
而且,main 方法是靜態的,因此不能在 main 方法中使用“this”引用。
示例
public class Sample{
int num = 50;
public static void main(String args[]){
System.out.println("Contents of the main method"+this.num);
}
}編譯時錯誤
Sample.java:4: error: non-static variable this cannot be referenced from a static context
System.out.println("Contents of the main method"+this.num);
^
1 error
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP