導航:首頁 > 方法技巧 > 如何選擇實例方法和靜態方法

如何選擇實例方法和靜態方法

發布時間:2024-02-05 14:09:02

① 靜態方法的方法使用

靜態方法與靜態變數一樣,屬於類本身,而不屬於那個類的一個對象。調用一個被定義為static的方法,可以通過在它前面加上這個類的名稱,也可以像調用非靜態方法一樣通過類對象調用。
實例方法必須通過類的實例來使用。實例方法可以使用類的非靜態成員,也可以使用類的靜態成員。
類的靜態方法,靜態變數是在類裝載的時候裝載的。但是要特別注意,類的靜態變數是該類的對象所共有的,即是所有對象共享變數。所以建議盡量少用靜態變數。盡量在靜態方法中使用內部變數。 其中static關鍵字即表示靜態的。聲明靜態方法的語法如下:
<訪問修飾符>static返回類型 方法名(參數列表)
{//方法體} 靜態方法與實例方法唯一不同的,就是靜態方法在返回類型前加static關鍵字。靜態方法的調用有兩種途徑:
(1)通過類的實例對象去調用
調用格式為: 對象名.方法名
(2) 通過類名直接調用
調用格式為: 類名::方法名 我們在使用時要注意:
靜態方法只能訪問類的靜態成員,不能訪問類的非靜態成員;
非靜態方法可以訪問類的靜態成員,也可以訪問類的非靜態成員;
靜態方法既可以用實例來調用,也可以用類名來調用。 #include<iostream>using namespace std;
class CStaticTest{public:CStaticTest(int a){this->a = a;}~CStaticTest(){}
static int add(CStaticTest& c1, CStaticTest& c2){return c1.a + c2.a;}
private:int a;};
int main(){CStaticTest tmp1(1);CStaticTest tmp2(2);int sum1 = tmp1.add(tmp1, tmp2);int sum2 = CStaticTest::add(tmp1, tmp2);
cout << sum1 << endl;cout << sum2 << endl;return 0;} 1. 有靜態屬性的類,一般會定義靜態方法。
2. 沒有屬性的類,一般會定義靜態方法,這樣在使用時,通過類名::方法名即可調用,
而不用先定義對象,再調用,這樣可以省去一行代碼。

閱讀全文

與如何選擇實例方法和靜態方法相關的資料

熱點內容
硅錳合金錳的分析方法 瀏覽:122
土豆做菜的最簡單方法 瀏覽:866
活性炭法檢測氡方法 瀏覽:885
如何提高數學成績的最佳方法小學 瀏覽:121
干鍋包菜製作方法怎麼樣燒才好吃 瀏覽:429
java如何根據傳入參數調方法 瀏覽:517
用什麼方法能緩解口舌乾燥 瀏覽:77
apollo計算方法 瀏覽:796
有肚子t恤下擺打結方法步驟 瀏覽:626
4歲幼兒口齒不清晰的治療方法 瀏覽:825
子宮肌瘤的治療方法小 瀏覽:77
手機充電器線的正確方法 瀏覽:493
如何快速生成get和set方法 瀏覽:683
小孩得了結核怎麼治療方法 瀏覽:634
比率電化學分析方法什麼意思 瀏覽:411
活塞波浪環的正確安裝方法 瀏覽:551
腳上長疣的治療方法 瀏覽:116
要用什麼方法寫字才快 瀏覽:559
原神中找封神童簡單的方法 瀏覽:668
識字教學第六課畫教學方法 瀏覽:771