例項變數與static變數的區別

2021-07-31 17:54:02 字數 607 閱讀 8188

成員變數又分為兩種,一為例項變數,以為static變數(也稱為類變數、靜態變數)

static變數

static變數即類變數、靜態變數,在變數前面有static關鍵字修飾。對乙個類,每當建立乙個static變數時,系統就會為該static變數分配一次記憶體,以後不管建立了多少個物件,所有物件呼叫該static變數時,static變數的值是共享的。

可以通過類名或者物件來呼叫static變數。

例項變數

在變數前面沒有static關鍵字修飾。物件的例項化,就是指這個,可以通過物件來訪問例項變數,和static變數的區別就是,例項變數不可一通過類名來訪問成員變數。

/*例項變數與static變數的區別:

* 例項變數通過物件改變變數的值,並不會影響到其他物件的例項化變數的值。

* static變數可以

*/public class concentcircle

}

輸出結果為:

circle1:x=200,y=100,r=50

circle2:x=200,y=100,r=150

static全域性變數與普通的全域性變數的區別詳細解析

1 static全域性變數與普通的全域性變數有什麼區別?2 static區域性變數和普通區域性變數有什麼區別?3 static函式與普通函式作用域有什麼不同?4 static函式與普通函式有什麼區別?1 static全域性變數與普通的全域性變數有什麼區別?答 全域性變數的說明之前再加以static ...

Static 方法與變數

首先說一下static關鍵字,1.用static修飾的成員變數不屬於物件的資料結構 2.static變數是屬於類的變數,通常可以通過類名來引用static成員 3.static成員變數和類的資訊一起儲存在方法區,而不是在堆中 4.乙個類的static成員變數只有 乙份 無論該類建立了多少物件。通過下...

類變數與例項變數

定義乙個英雄類,包含玩家數量,生命值,攻擊力和玩家姓名,同時包含乙個方法攻擊方法,呼叫攻擊方法時顯示如圖資訊,建構函式中需要初始化資料,當玩家加入遊戲後需要顯示玩家姓名和數量 class hero count 0 類變數 def init self 例項變數 self.hp 0 self.attac...