子父類中函式

託帕發表於2018-08-31

當子類中出現和父類中一樣的函式時,當子類物件呼叫該函式,執行的是子類中的函式,如同父類中的函式被覆蓋了一樣,這種情況就是函式的另一種特性:重寫(覆蓋)

注意:
1.子類覆蓋父類時,必須要保證子類許可權大於父類,才可以覆蓋,否則編譯出錯

訪問許可權修飾符:public >default >private 成員前面沒加任何訪問許可權,預設許可權是default

2.靜態的函式只能覆蓋靜態的

過載:只看同名的方法的引數列表
重寫:子父類方法要一模一樣

public class Test {
	public static void main(String[] args){
		Cat c=new Cat();
		Dog d=new Dog();
		c.run();
		d.run();
	}
}

class Animal{
	String Type;
	void run(){
		System.out.println("跑步");
	}
}
class Cat extends Animal{
}
class Dog extends Animal{
	void run(){
		Type="大黃狗";
		System.out.println(Type+"哼著歌跑步");
	}
}

相關文章