在java中說我們不能從靜態方法調用非靜態方法,這意味着什麼?我們總是可以調用非靜態方法frm靜態方法使用對象雖然..'請說明java中的靜態方法可以調用非靜態方法
0
A
回答
0
要調用非靜態方法,您需要一個實例(對象) - 因爲這些方法屬於一個實例,並且通常只在實例的上下文中才有意義。
靜態方法不屬於一個實例 - 它們屬於該類。因此,有沒有必要先創建一個實例,你可以叫MyClass.doSomething()
void foo(){
MyClass.doSomething();
}
但是你可以從你提供的第一創建實例一個靜態方法調用非靜態方法。
static void bar(){
MyObject o = new MyObject();
o.doSomething();
}
1
這裏是一個很好的一段代碼來說明這是什麼意思:試圖做的是報道不能做
class MyClass{
static void func1(){
func2(); //This will be an error
}
void func2(){
System.out.println("Hello World!");
}
}
相關問題
- 1. 非靜態調用靜態方法
- 2. 爲什麼可以調用非靜態類的靜態方法?
- 3. 從Python中的靜態方法調用非靜態方法
- 4. 你可以在靜態方法中調用非靜態方法嗎?
- 5. 在java中調用非靜態方法
- 6. 在java中的靜態方法,我可以以非靜態方式訪問靜態方法嗎?
- 7. Java錯誤:靜態方法無法引用非靜態方法
- 8. 調用靜態類中的非靜態方法 - java
- 9. 用Java調用非靜態方法Toasts
- 10. 非靜態方法無法從Android Studio中的非靜態方法調用
- 11. 在Java的主要靜態方法中調用非靜態方法
- 12. 在靜態web方法裏面調用非靜態方法
- 13. 從靜態方法調用非靜態方法
- 14. 如何從靜態方法調用非靜態方法android
- 15. 從靜態方法調用非靜態方法
- 16. 如何從靜態方法調用非靜態方法
- 17. 從靜態Web方法調用ASP.NET頁面非靜態方法
- 18. 如何從靜態方法調用非靜態方法?
- 19. 從靜態方法調用非靜態方法Objective C
- 20. 如何從一個靜態方法調用非靜態方法
- 21. 如何從靜態方法調用非靜態方法?
- 22. Java靜態方法調用
- 23. 從非靜態類動態調用非靜態方法的最簡單方法?
- 24. 以靜態方法調用?
- 25. Java:靜態方法與非靜態方法
- 26. 靜態方法和非靜態方法Java
- 27. 調用非靜態方法動態
- 28. 非靜態方法說它的靜態?
- 29. 非靜態的靜態方法
- 30. 在Dao類中使用靜態方法或非靜態方法?
編寫代碼。然後*搜索*的錯誤消息。你會發現許多重複像http://stackoverflow.com/questions/5201895/calling-the-instance-of-a-static-method?rq=1,http://stackoverflow.com/questions/18375971/can- i-call-instance-method-of-a-static-member-from-within-static-context?rq = 1(或this)可能重複[背後的原因是什麼?非靜態方法不能被引用靜態上下文「?](http://stackoverflow.com/questions/290884/what-is-the-reason-behind-non-static-method-cannot-be-referenced-from-a-static) – user2864740