關於static方法和變數,舉例說明

2021-04-24 21:58:35 字數 684 閱讀 6941

有些朋友不太清楚static變數和方法的使用,特此舉例說明

public class teststatic

使用的時候,

teststatic ts1 = new teststatic();

ts1.i = 3;

ts1.j = 5;

teststatic ts2 = new teststatic();

ts2.i = 7;

ts2.j = 9; // also modified ts1.j

system.out.println(ts1.i); //=3

system.out.println(ts1.j); //=9

system.out.println(ts2.i); //=7

system.out.println(ts2.j); //=9

//static 變數無需經過class的例項化即可使用

system.out.println(teststatic.j); //=9

由於 j 是static的,所以你修改teststatic任何乙個例項的時候,都會影響到所有的 j ,所以從這個角度來說,static可 以用作共享資源,當然,共享了就要注意併發使用的問題,當某乙個執行緒正在使用這個變數,另外乙個執行緒也要使用這個變數,就可能會造成資料不一致的問題,就 是所謂的執行緒安全問題。

static 方法和static 變數

static方法不能直接訪問類內的非static變數和不能呼叫this,super語句分析 大家都知道在static方法中,不能訪問類內非static成員變數和方法。可是原因是什麼呢?這首先要從static方法的特性說起。static方法,即類的靜態成員經常被稱為 成員變數 class member...

static變數 方法 類 和final

static變數 宣告為static的變數實質上就是全域性變數。當宣告乙個物件時,並不產生static變數的拷貝,而是該類所有的例項變數共用同乙個static變數。靜態變數與靜態方法類似。所有此類例項共享此靜態變數,也就是說在類裝載時,只分配一塊儲存空間,所有此類的物件都可以操控此塊儲存空間 sta...

static 變數和static 函式

在c語言程式設計中,static的乙個作用是資訊遮蔽!比方說,你自己定義了乙個檔案 該檔案中有一系列的函式以及變數的宣告和定義!你希望該檔案中的一些函式和變數只能被該檔案中的函式使用,那麼,你可以在該函式 變數的前面加上static,代表他們只能被當前檔案中的函式使用!而在c 中,用static來作...