Java oop代碼8(原創(chuàng)方法):重寫,繼承,在主函數(shù)中定義一個判斷的方法,instanceof

//聲明一個電子產(chǎn)品類,定義功能方法,
//打印“父類電子產(chǎn)品的功能方法”,定義子類U盤類繼承自電子產(chǎn)品類,
//重寫電子產(chǎn)品的功能方法,打印“U盤可以存儲歌曲”,
//聲明一個硬盤類繼承自電子產(chǎn)品類,
//重寫電子產(chǎn)品的功能方法,打印“硬盤也可以存儲歌曲”,
//定義一個MP3類繼承自電子產(chǎn)品類,
//重寫電子產(chǎn)品的功能方法,另外增加一個方法“MP3可以聽歌”,
//在主函數(shù)中定義一個判斷的方法,
//要求傳入一個電子產(chǎn)品類的參數(shù),
//根據(jù)傳入的電子產(chǎn)品打印不同的功能(instanceof關(guān)鍵字)
package a;
public class Student {
public static void main(String[] args) {
dianZi r = new UPan();
r.gongYou();// 調(diào)用他們共有的方法
r.gongneng();// 使用向上轉(zhuǎn)型是不可以調(diào)用子類獨(dú)有的方法,如果想要使用
// 就在父類加上這個方法就可以了
dianZi y= new yingPan();
y.gongYou();
y.gongneng();
dianZi m = new MPSan();
m.gongYou();
m.gongneng();
}
// 判斷
public static void panDuan(dianZi r) {
if (r instanceof UPan) {
r.gongYou();
r.gongneng();
} else if (r instanceof yingPan) {
r.gongYou();
r.gongneng();
} else if (r instanceof MPSan) {
r.gongYou();
r.gongneng();
}
}
}
class dianZi {
public String name;
public int age;
public void gongYou() {
System.out.println("父類電子產(chǎn)品的功能方法");
}
public void gongneng() {
}
}
class yingPan extends dianZi {
public void gongYou() {
System.out.println("硬盤也可以存儲歌曲");
}
}
class UPan extends dianZi {
public void gongYou() {
System.out.println("U盤可以存儲歌曲");
}
}
class MPSan extends dianZi {
public void gongYou() {
System.out.println("MP3可以聽歌");
}
}
