靜態方法和非靜態方法的區別

2021-08-22 03:19:35 字數 495 閱讀 6582

靜態方法和非靜態方法的區別:

1、靜態方法屬於類所有,類例項化前即可使用;

2、非靜態方法可以訪問類中的任何成員,靜態方法只能訪問類中的靜態成員;

3、因為靜態方法在類例項化前就可以使用,而類中的非靜態變數必須在例項化之後才能分配記憶體;

4、static內部只能出現static變數和其他static方法!而且static方法中還不能使用this等關鍵字,因為它是屬於整個類;

5、靜態方法效率上要比例項化高,靜態方法的缺點是不自動進行銷毀,而例項化的則可以做銷毀;

6、靜態方法和靜態變數建立後始終使用同一塊記憶體,而使用例項的方式會建立多個記憶體。

主要區別:靜態方法在建立物件前就可以使用了,非靜態方法必須通過new出來的物件呼叫。

靜態方法與例項方法在效能和占用記憶體上沒有明顯的區別,是否宣告為靜態方法需要從型別的非靜態字段、事件、物件導向擴充套件和多型這三方面來考慮。

靜態方法和非靜態方法的區別

靜態方法static 類方法 和 非靜態方法 例項方法 的區別 方法我們主要分為三種 1.構造方法 2.非靜態方法 普通方法 例項方法 3.靜態方法 類方法 對於1 補充一下 構造方法分為無參構造方法 和 有參構造方法。另外 這兩個方法,涉及到了方法過載 小夥伴可以自己去了解方法過載 方法重寫 方法...

靜態方法和非靜態方法的區別

靜態方法和非靜態方法的區別總結如下 1 靜態方法屬於類所有,類例項化前即可使用 2 非靜態方法可以訪問類中的任何成員,靜態方法只能訪問類中的靜態成員 3 因為靜態方法在類例項化前就可以使用,而類中的非靜態變數必須在例項化之後才能分配記憶體 4 static內部只能出現static變數和其他stati...

靜態方法與非靜態方法區別

c 靜態方法與非靜態方法的區別不僅僅是概念上的,那麼他們有什麼具體的區別呢?讓我們通過本文向你做一下解析。c 的類中可以包含兩種方法 c 靜態方法與非靜態方法。那麼他們的定義有什麼不同呢?他們在使用上會有什麼不同呢?讓我們來看看最直觀的差別 使用了static 修飾符的方法為靜態方法,反之則是非靜態...