Java基礎知識 static

2021-08-17 18:05:15 字數 951 閱讀 7075

一.變數

static修飾的變數稱為:靜態變數,類變數或,成員變數,全域性變數。

1.在類被載入的時候就被初始化,與類關聯,只要類存在,static變數就存在。而非static修飾的變數需要物件new出來才能劃分儲存空間,與具體的物件對應,且該變數僅為當前變數擁有。

2.static修飾的變數在載入的時候優先於main方法載入在記憶體中的資料共享區-方法區,而非statci變數只有物件被new出來的時候才載入到對記憶體中。

3.乙個static變數單獨劃分一塊儲存空間,不和具體的物件繫結在一起,該儲存空間被類的各個物件共享

非static變數,沒建立一次物件就會載入一次(原文:建立物件時會載入很多次。每次建立都會拷貝乙份。)

4.static變數的引用方法:類名.變數名

非static變數引用方法:物件名.變數名

5.類中呼叫static類時直接呼叫或者類名.變數名

非static則用this呼叫或者直接呼叫

二:方法

1.static修飾的方法和變數一樣都是優於main方法被載入到方法去,以便公用

2.靜態的static方法中不能有super和this關鍵字,因為static方法先於物件建立之前就已經載入了,屬於類的方法。而this和super指向本類的物件或者父類的物件。

非靜態方法屬於物件的,是可以用super和this呼叫的

3.static方法呼叫:類名.方法名

非static方法呼叫:建立物件後,物件名.方法名

4.static方法載入一次,被所有的物件共享

非static方法有多少個物件就拷貝多少次,每個物件只能呼叫自己拷貝的方法

5.物件呼叫非靜態方法時不用考慮執行緒安全的問題,而呼叫靜態方法時就要考慮執行緒安全性問題。因為靜態方法只有乙份,共用的,而非靜態方法是自己用的

6.同乙個方法中靜態方法只能訪問靜態變數,而非靜態方法可以訪問非靜態的方法(使用類名呼叫,或者創建立本類的物件呼叫)。

java 基礎知識

1.複製。賦值操作。就是先將其本身加乙個變數再賦值給其本身。如a b就是a a b 2.比較兩個值或者說是位址是否相同 指向同乙個物件 和 或 3.操作符是if else操作的縮寫,如果 右邊判斷為true則返回 左邊的計算結果。右邊錯誤,返回 右邊的計算結果。在class09裡面有例子。4.流程控...

Java基礎知識

1 物件導向的特徵有哪些方面 1.抽象 抽象就是忽略乙個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象並不打算了解全部問題,而只是選擇其中的一部分,暫時不用部分細節。抽象包括兩個方面,一是過程抽象,二是資料抽象。2.繼承 繼承是一種聯結類的層次模型,並且允許和鼓勵類的重用...

JAVA基礎知識

一 關鍵字 由以下關鍵字修飾的變數 方法和類所具有的特性如下 public 包內及包外的任何類中均可訪問 private 包內及包外的任何類中均無權訪問 protected 包內的任何類以及包外的那些繼承了此類的子類中均可訪問 friendly 如果不以如上關鍵字修飾,則預設為friendly型別,...