Java基礎知識中的一些關鍵字
- 1、break關鍵字:
break 語句用於終止最近的封閉迴圈或它所在的switch 語句。控制傳遞給終止語句後面的語句(如果有的話)。
適用:for迴圈 、 switch兩種迴圈語句。
break的用法:
1. 單獨使用。
2. 與標籤一起使用。(標籤:即一個名字,滿足識別符號的條件即可)。
使用細節: 不要再break語句之後,編寫其他語句,永遠都執行不到,編譯報錯。
continue關鍵字:語句將控制權傳遞給它所在的封閉迭代語句的下一次迭代。(跳出本迴圈,執行下一次迴圈
適用於:while 、 do while 、 for迴圈語句
使用細節:
1. 如果continue出現在迴圈的末尾(最後一條語句),那麼可以省略。
2. 如果continue出現在迴圈的第一條語句,那麼後面的語句都無法執行,所以編譯報錯。
3. 可以結合標記使用。
- 2、this關鍵字
this關鍵字代表是物件的引用。也就是this在指向一個物件,所指向的物件就是呼叫該函式的物件引用。
1:沒有this會出現什麼問題
1:定義Person類
1:有姓名年齡成員變數,有說話的方法。
2:定義構造方法,無參的,多個有參的。都要實現。
this是什麼
1:在建構函式中列印this
2:建立物件,列印物件名p
3:this和p是一樣的都是記憶體地址值。
4:this代表所在函式所屬物件的引用。
return 關鍵字的作用:
1.返回資料給函式的呼叫者。
2.函式一旦執行到了return關鍵字,那麼該函式馬上結束。 (能結束一個函式)
注意:一個函式的返回值型別 是void,那麼也可以出現return關鍵字,但是return關鍵字的後面不能有資料。super關鍵字:
super關鍵字代表了父類空間的引用。
super關鍵字的 作用:
1.子父類存在著同名的成員時,在子類中預設是訪問子類的成員,可以通過super關鍵字指定訪問父類的成員。
2.建立子類物件時,預設會先呼叫父類無參的構造方法,可以通過super關鍵字指定呼叫父類的構造方法。
super關鍵字呼叫父類構造方法要注意的事項:
1.如果在子類的構造方法上沒有指定呼叫父類的構造方法,那麼java編譯器會在子類的構造方法上面加上super()語句。
2.super關鍵字呼叫父類的建構函式時,該語句必須要是子類建構函式中的第一個語句。
3.super與this關鍵字不能同時出現在同一個建構函式中呼叫其他的建構函式。因為兩個語句都需要第一個語句。
super關鍵字與this關鍵字的區別:
1.代表的事物不一致。
1.super關鍵字代表的是父類空間的引用。
2.this關鍵字代表的是所屬函式的呼叫者物件。
2.使用前提不一致。
1.super關鍵字必須要有繼承關係才能使用。
2.this關鍵字不需要存在繼承關係也可使用。
3.呼叫建構函式的區別:
1.super關鍵字是呼叫父類的建構函式。
2.this關鍵字是呼叫本類的建構函式。
break關鍵字與return關鍵字的區別:
1.break關鍵字是結束一個迴圈。
2.return關鍵字是結束一個函式。
- continue關鍵字
continue的適用範圍: continue只能用於迴圈語句。
continue的作用:continue的作用是跳過本次的迴圈體內容。繼續下一次。
continue要注意的事項:
1.在一種情況下,continue後面不能跟有其他語句,因為是永遠都無法執行到。
2.continue 也可以配合標記使用的。
static(靜態\修飾符)
- static修飾成員變數 :
1. 如果有資料需要被共享給所有物件使用時,那麼就可以使用static修飾。
靜態成員變數的訪問方式:
方式1: 可以使用物件進行訪問。
格式:物件.變數名。
方式二:可以使用類名進行訪問。
格式:類名.變數名;
2:static
1:為了實現物件之間重複屬性的資料共享
3:static使用
1:主要用於修飾類的成員
1:成員變數
1:非靜態成員變數:需要建立物件來訪問
2:靜態成員變數:使用類名直接呼叫,也可以通過物件訪問
2:成員方法
可以使用類名直接呼叫
1:靜態函式:
1:靜態函式中不能訪問非靜態成員變數,只能訪問靜態變數。
2:靜態方法不可以定義this,super關鍵字.
3:因為靜態優先於物件存在.靜態方法中更不可以出現this
2:非靜態函式:非靜態函式中可以訪問靜態成員變數
注意:
1.非靜態的成員變數只能使用物件進行訪問,不能使用類名進行訪問。
2.千萬不要為了方便訪問資料而使用static修飾成員變數,只有成員變數的資料是真正需要被共享的時候
才使用static修飾。
- extends關鍵字
繼承使用extends關鍵字實現
1:發現學生是人,工人是人。顯然屬於is a 的關係,is a就是繼承。
2:誰繼承誰?
學生繼承人,發現學生裡的成員變數,姓名和年齡,人裡邊也都進行了定義。有重 復程式碼將學生類的重複程式碼註釋掉,建立學生類物件,仍然可以獲取到註釋的成員。這就是因為繼承的關係,學生類(子類)繼承了人類(父類)的部分
繼承細節;
1:類名的設定,被繼承的類稱之為父類(基類),繼承的類稱之為子類
2:子類並不能繼承父類中所有的成員
1:父類定義完整的成員 靜態成員,非靜態,構造方法。靜態變數和靜態方法都可以通過子類名.父類靜態成員的形式呼叫成功。
2:所有的私有成員不能繼承,private修飾的成員。
3:建構函式不能被繼承
- instanceof關鍵字
1:快速演示instanceof
Person p=new Person(); System.out.println( p instanceof Person); |
2:instanceof是什麼?
1:屬於比較運算子:
2:instanceof關鍵字:該關鍵字用來判斷一個物件是否是指定類的物件。
3:用法:
物件 instanceof 類;
該表示式是一個比較運算子,返回的結果是boolea型別 true|false
注意:使用instanceof關鍵字做判斷時,兩個類之間必須有關係。
3:instanceof好處
1:可以判斷物件是否是某一個類的例項
1:定義靜態方法求圓的面積
- final關鍵字
2:定義靜態方法求圓的周長
3:發現方法中有重複的程式碼,就是PI,圓周率。
1:如果需要提高計算精度,就需要修改每個方法中圓周率。
4:描述一個變數
1:方法都是靜態的,靜態只能訪問靜態,所以變數也定義為靜態的。
public static double PI=3.14;
1:如果定義為public後,新的問題,類名.PI=300; 改變了PI的值。
2:修改為private,修改為private後進行了封裝,需要getset公共訪問方法。
3:現有的知識不能解決這樣的問題了。可以使用final
5:使用final
1:final關鍵字主要用於修飾類、類成員、方法、以及方法的形參。
2:final修飾成員屬性:
1:說明該成員屬性是常量,不能被修改。
public static final double PI=3.14;
1:public :訪問許可權最大
2:static :記憶體中只有一份
3:final :是一個常量
4:常量名大寫
5:必須初賦值。