靜態方法和非靜態方法

2021-09-29 17:36:22 字數 469 閱讀 4294

靜態方法和非靜態方法

其次,靜態方法中只能呼叫靜態成員或者方法,不能呼叫非靜態方法或者非靜態成員,而非靜態方法既可以呼叫靜態成員或者方法又可以呼叫其他的非靜態成員或者方法。
例子1:靜態方法的main方法訪問類中的非靜態成員方法。

class test

public static void main(string args)

}結論:以上程式在編譯時,會提示靜態方法不能引用非靜態方法的錯誤資訊。(如下圖所示)

解決方法:

一、靜態方法只能訪問靜態方法和靜態成員。

class test

public static void main(string args)

}二、非靜態方法要被例項化才能被靜態方法呼叫。

class test

public static void main(string args)

}

靜態方法和非靜態方法

首先,兩者本質上的區別是 靜態方法是在類中使用staitc修飾的方法,在類定義的時候已經被裝載和分配。而非靜態方法是不加static關鍵字的方法,在類定義時沒有占用記憶體,只有在類被例項化成物件時,物件呼叫該方法才被分配記憶體。其次,靜態方法中只能呼叫靜態成員或者方法,不能呼叫非靜態方法或者非靜態成...

靜態和非靜態方法 呼叫靜態和非靜態方法 原創

在學習php物件導向的時候,遇到了一些問題 class test1 在test1類中,定義了乙個test方法。一般呢,想要呼叫test方法的話,是通過例項化乙個物件來呼叫test方法的。比如 aaa.php php 正常的方式訪問普通方法test class test1 new new test1 ...

靜態和非靜態方法 呼叫靜態和非靜態方法 原創

在學習php物件導向的時候,遇到了一些問題 class test1 在test1類中,定義了乙個test方法。一般呢,想要呼叫test方法的話,是通過例項化乙個物件來呼叫test方法的。比如 aaa.php php 正常的方式訪問普通方法test class test1 new new test1 ...