只是個人在學習中的一些記錄,不具有普適性!!
被static修飾的變數和方法是靜態的,儲存在jvm的方法區,所以只要載入了類就可以使用static方法。
靜態方法中不能呼叫非靜態變數,因為在這個類沒有建立物件時,靜態方法找不到非靜態變數。在這個類建立了物件之後,靜態方法也不能確定方法內的非靜態變數來自於哪個物件,所以靜態方法中只能呼叫靜態變數被此類建立的物件可以直接呼叫靜態方法或變數,但是靜態變數對於所有的物件是共享的。
如果用static修飾一段**塊,這段**塊會在初始化類的時候執行,因為類只會初始化一次,所以這段**塊也只會執行一次
多型是同乙個行為具有多個不同表現形式的能力。多型只用來形容方法
多型的發生具有三個必要條件:
繼承方法重寫
父類引用指向子類物件 eg:dog是animal的子類,當乙個方法的引數為(animal a)時,實際傳入的引數是乙個dog物件。或者animal b=new dog();
多型的優點
消除型別之間的耦合關係
可替換性
可擴充性
介面性靈活性
簡化性(如果不用多型會有很多過載方法)
final關鍵字修飾的方法不能被重寫
final修飾的類不能被繼承
final修飾的變數是常量,不能更改
Java學習筆記1
1.泛型 2.語言只是實現目標的工具,而不是目標本身。詹姆斯 高斯林 3.string類中的substring方法為前開後閉的 4.不要使用 比較兩個字串,這個運算子只能夠確定兩個字串是否放在同乙個位置上,完全有可能將內容相同的多個字串的拷貝放置在不同的位置上。使用s.equals t 來比較兩個字...
Java學習筆記 1
1 在類中的位置不同 成員變數 類中方法外 區域性變數 方法定義中或者方法宣告上 2 在記憶體中的位置不同 成員變數 在堆中 區域性變數 在棧中 3 生命週期不同 成員變數 隨著物件的建立而存在,隨著物件的消失而消失 區域性變數 隨著方法的呼叫而存在,隨著方法的呼叫完畢而消失 4 初始化值不同 成員...
java學習筆記1
public class aaa 結果為 a,b,c012 1 a,b,c 0public class aaa void f1 char x void f1 short x void f1 int x void f1 long x void f1 string x void f2 char x vo...