最近因為項目的原因苇经,比較心煩意燥,索性把 Java 從頭開始理一遍宦言,期間發(fā)現(xiàn)很多新的東西扇单,受益匪淺,自己修行還差得遠奠旺。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?----寫在前面的跟題記差不多的東西
1.多態(tài)
? 多態(tài)分為兩種蜘澜,即:
? ? ? ? ? ? ? 1.編譯時多態(tài),從JVM的角度來講响疚,靜態(tài)分派鄙信;即重載
? ? ? ? ? ? ? 2.運行時多態(tài),從JVM的角度來講忿晕,動態(tài)分派装诡;即重寫
? ?重載:相同方法名,不同參數(shù)践盼。在代碼中鸦采,同一個類名下,可以編寫多個同名咕幻,入?yún)⒉煌ㄟ@點是必須項)赖淤,返回值可以不同的方法
在調用時,根據(jù)入?yún)⒄{用不同的方法谅河。
? ? 重寫:一般是伴隨著繼承咱旱,由子類繼承父類,并重新定義父類中的方法绷耍。
? ? ? ? ? ? 注意兩點:我們有一個父類Father吐限,有一個子類Children?
? ? ? ? ? ? ? 1.向上轉型是自動的;Father f = new Children()
? ? ? ? ? ? ? 2.向下轉型需要強轉褂始;Children c = (Children)new Father()
2.final關鍵字
一般面試都很容易問到诸典,很好答,但是想得高分也很考驗基礎崎苗,我查看了很多資料狐粱,學習并記錄如下舀寓。
1 .被final修飾的類不可以被繼承
2. 被final修飾的方法不可以被重寫
3. 被final修飾的變量不可以被改變
這里特別注意下第三點,被final修飾的變量不可變肌蜻,指的是變量的引用不可變互墓,即指向變量的地址不可變,而
變量的內(nèi)容是可以改變的蒋搜。
3.static關鍵字
1. static靜態(tài)變量? ? 2. static靜態(tài)方法? 3. static靜態(tài)代碼塊? 4. static靜態(tài)內(nèi)部類? 5. import static
① 篡撵。根據(jù)JVM的類加載機制,靜態(tài)資源是在類初始化時加載豆挽,并且只加載一次育谬,類初始化優(yōu)先于類的new,可以看出靜態(tài)變量是在類new之前就已經(jīng)
加載的帮哈,靜態(tài)資源的加載順序優(yōu)先于非靜態(tài)資源膛檀,所以我們可以很容易知道,靜態(tài)資源不可以引用非靜態(tài)資源娘侍,靜態(tài)資源可以引用靜態(tài)資源宿刮,非
靜態(tài)資源可以引用靜態(tài)資源。
②私蕾。由①可知僵缺,靜態(tài)代碼塊也是在類初始化時就已經(jīng)加載了的,也只加載一次踩叭。注意幾點:
? ? ? ? ? 1. 多個靜態(tài)資源的加載順序是嚴格按照靜態(tài)資源的定義順序來加載的磕潮。(語句在源文件中的出現(xiàn)順序);
? ? ? ? ? 2 .靜態(tài)代碼塊對于定義在它之后的靜態(tài)變量容贝,可以賦值自脯,但是不能訪問;
? ? ? ? ? 3. 靜態(tài)代碼塊是嚴格按照父類靜態(tài)代碼塊->子類靜態(tài)代碼塊的順序加載的斤富,且只加載一次膏潮;
③關于import static
? ? ?貼兩段代碼 :
import ?static ?java.lang.Math.*;
public ?class ?A{
? ? ?public ? static ? void ? main(String[] args){
? ? ? ? ? ? ?System.out.println(sin(2.2));
? ? ?}
}
引入Math包下的所有靜態(tài)資源,用到其中某個方法時满力,可直接寫方法名使用焕参,例如sin;
import static java.lang.Math.sin;
public ?class A{
? ? public ? ?static ? ?void ? main(String[] args){
? ? ? ? ? ? ? ? ?System.out.println(sin(2.2));
? ? }
}
引入Math包下的某個具體靜態(tài)資源油额,可直接寫方法名使用叠纷,例如sin;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 以上所得均來自博客 ??www.cnblogs.com/xrq730/