您好,登錄后才能下訂單哦!
父類:
public class Animal {
int age; //年齡
double height; //身高
double weight; //體重
Animal()
{
System.out.println("一個動物誕生");
}
Animal(int age,double height,double weight)
{
this.age = age;
this.height = height;
this.weight = weight;
}
//睡覺方法
public void sleep()
{
System.out.println("動物在睡。。。。。");
}
}
子類:
package javas.frist;
//人類
public class Human extends Animal {
Human()
{
System.out.println("一個人誕生");
}
//睡覺方法
@Override //方法重寫
public void sleep()
{
System.out.println("人類在開始睡覺啦。。。。。");
}
}
//子類魚
public class Fish extends Animal{
//睡覺方法
public void sleep()
{
System.out.println("開著眼睛在睡覺。。。。。");
}
}
//子類馬
public class Hose extends Animal {
//睡覺方法
public void sleep()
{
System.out.println("站者睡覺。。。。。");
}
}
測試類:
package javas.frist;
public class Test {
public static void main(String[] args) {
Human h = new Human(); //new 誰就子類方法就顯示
// Human h = new Human();
Animal h = new Human(); //多態現象
//Animal h = new Animal(); //多態現象
System.out.println("年齡:"+h.age);
System.out.println("體重:"+h.weight);
System.out.println("身高:"+h.height);
h.sleep();
Animal a = new Animal();
a.sleep();
}
/**
* 生存子類對象,先執行父類構造方法,在執行子類構造方法
* 注意:構造方法是不能繼承的。
* java采用單根繼承,都是從object繼承
* 繼承好處:提高代碼的復用
*
* 方法重寫:Override /Overwrite,子類重寫了從父類繼承過來的方法
* 方法重載:Overload,方法的名字相同,參數個數,類型,次序不同
* 相同點:都是一種多態性的表現,方法重寫屬于一種動態的多態性,方法重載屬于靜態多態性
*
* 不同點,方法重寫有繼承,方法重載無繼承。
*
* 多態三個條件:
*有繼承、有方法重寫、父類引用指向子類對象
*
*
*
* */
}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。