我想知道調用類方法和調用實例方法之間的區別嗎?對類方法的調用和對實例方法的調用之間有什麼區別?
是不是一個類的方法是這樣的:
identifier();
和實例方法,如:
object.identifier();
糾正我,如果我錯了。
我想知道調用類方法和調用實例方法之間的區別嗎?對類方法的調用和對實例方法的調用之間有什麼區別?
是不是一個類的方法是這樣的:
identifier();
和實例方法,如:
object.identifier();
糾正我,如果我錯了。
簡單來說,一個class method
(「靜態方法」)是一個WHOLE類的屬性,所以它的名爲className.methodName()
。
但instance methods
,則每個對象都有自己的這些副本,所以他們r稱爲objectName.instanceMethodName().
第二個區別:
第三位先進,區別是類(Static) methods are bound to the class at compile time
,而instance methods are bound to their objects at run time
..
(我想,你的意思是.();
是像myClassInstance.myMethod();
如果爲真,則:)
類方法是static
方法,它可以被稱爲加載類。他們不需要調用該類的實例。假定您創建這樣的一個類:
class MyClass {
public static void classMethod() {
/* Something to do (statically) here */
}
public void instanceMethod() {
/* Some thing to do here */
}
正如你所看到的,一旦你輸入你的類在你的工作區,你可以調用靜態(類)方法,像這樣:
MyClass.classMethod();
但不是實例方法,調用實例方法所需要的類的實例被調用,像這樣:
MyClass mc = new MyClass();
mc.instanceMethod();
還要注意,你只能static
作品在(!)方法。像改變靜態變量或調用靜態函數一樣。 這個答案也可以幫助。 Difference between Static methods and Instance methods
根據具體情況,您可以同時調用靜態方法和實例方法。 –
[靜態方法和實例方法之間的差異]的可能重複(http://stackoverflow.com/questions/11993077/difference-between-static-methods-and-instance-methods) – vitfo