9
A
回答
25
靜態類無法首先實例化,因此即使您可以聲明非靜態(實例)成員,也不能訪問它們。由於這個原因確實沒有允許它的意思,所以語言只是禁止它。
記住,靜態類只是類,同時有兩塊直接關係到非靜態類的東西:類自己,實例/對象的類的。
非靜態類可以同時具有靜態成員和非靜態成員,以便靜態成員適用於該類,而非靜態成員適用於該類的實例。
2
靜態類不能包含非靜態成員,因爲根據定義它不能被實例化,所以不可能使用這些成員。
但是,非靜態類中的靜態成員可以在沒有類實例的情況下使用 - 有點不同的場景,即用於實用方法或工廠方法。
相關問題
- 1. 爲什麼所有靜態方法/變量都在非靜態類中?
- 2. 爲什麼非靜態變量不能在靜態方法內初始化?
- 3. 靜態類中的靜態變量和非靜態類中的靜態變量
- 4. 靜態方法和非靜態方法有什麼區別?
- 5. 非靜態類中的靜態方法和靜態類中的靜態方法有什麼區別?
- 6. Swift:爲什麼非靜態方法不能調用靜態變量和常量(static let)而沒有dynamicType?
- 7. 不能使靜態方法非靜態
- 8. 方法和變量有非靜態需要是靜態錯誤
- 9. 爲什麼可以調用非靜態類的靜態方法?
- 10. 什麼是靜態方法和變量?
- 11. C#靜態類 - 靜態類不能有非靜態成員
- 12. 爲什麼不能所有的方法和類變量都是靜態的?
- 13. 從C++中的靜態方法訪問非靜態類變量
- 14. 具有靜態方法的靜態類和具有靜態方法的常規類之間有什麼不同?
- 15. 靜態函數和非靜態變量
- 16. 靜態類和非靜態類有什麼區別?
- 17. 爲什麼不能在非靜態塊中聲明靜態最終變量?
- 18. 同一類中的Java靜態變量和非靜態變量
- 19. Android Studio靜態或非靜態變量和方法
- 20. 非靜態類中靜態方法的要點是什麼?
- 21. 工具類的靜態和非靜態方法的性能
- 22. 爲什麼非靜態方法可以訪問靜態字段?
- 23. 靜態和非靜態方法工作
- 24. powermockito靜態和非靜態方法鏈
- 25. 靜態和非靜態方法
- 26. 靜態變量和方法
- 27. 靜態方法和變量
- 28. 爲什麼非靜態的內部類不能有靜態成員(字段和方法)?
- 29. 具有靜態和非靜態重載的類方法
- 30. 爲什麼靜態方法和靜態嵌套類不能直接訪問實例變量?