java 繼承(extends),重寫, static , final

  • 繼承(extends)
    • 繼承是面向對象最顯著的一個特性。繼承是從已有的類中派生出新的類,新的類能吸收已有類的數據屬性和行爲,並能擴展新的能力
    • 教師類與工人類都是屬於人類,所以繼承必須滿足(is-a)關係,父類更加通用,子類更加具體。
    • java中子類擁有父類中非私有(private)的方法與屬性,使用extends關鍵字實現

  • 重寫
    • 子類和父類中方法相同,兩個類之間的關係,函數的返回值類型、函數名、參數列表都一樣

  • 靜態(static)
    • 在java中static關鍵字代表靜態的意思,可以用來修飾成員變量,成員方法,代碼塊。
    • 被static修飾的方法與屬性不需要依賴於對象進行訪問,也就是說當類被加載了,就可以直接通過類名去訪問。
    • 因爲靜態方法不需要依賴對象進行訪問所以也就沒有this一說,並且因爲沒有this那麼在靜態方法中不能訪問類的非靜態屬性與方法(非靜態的屬性與方法都是依賴於this的)

  • 常量(final)
    • final關鍵字在java中,用來修飾類,成員變量,方法,final代表最終的,
    • 被修飾的類是不允許被繼承的,
    • 被修飾的方法中的值也是不能被改變的,並且還要一開始就賦上初始值(或者在構造方法中,如果常量的類型是對象的話只要引用地址不變也是沒問題的),
    • 被修飾的方法也是不能重寫的,

首先咱得有倆個類,一個person類  與  teacher類
public clss Person{
	public  String name;
	public  int   age;
	public void show(){
		System.out.print("我是一個人");
	}
}

public class Teacher  extends  Person{
	public String major;
	
	public void show(){
		System.out.print("我是一個老師");
	}
}
// 上面倆個類就實現了繼承 , teacher繼承於person   在teacher中沒有寫name屬性  但是也可以訪問,
//因爲父類被子類繼承後  ,子類可以訪問父類非私有的屬性與方法

// e...方法重寫也在上面體現得很明顯


public class Teacher  {
	public void show(){
		System.out.print("123");
	}
}
public class Test{
	public static void main(String[] args){
		Teacher.show();   //輸出123
	}
}
// 靜態方法不依賴於對象訪問 , 可直接通過 類名訪問,


public class Teacher  {
	public final String name="小黑";  // 被修飾的屬性必須 放值
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章