package polymorphismp3;
public class PCI {
public void getGongNeng() {
}
}
package polymorphismp3;
public class SoundKa extends PCI{
public void getGongNeng(){
System.out.println("发出声音");
}
}
package polymorphismp3;
public class ShouKa extends PCI{
public void getGongNeng(){
System.out.println("显示图形");
}
}
package polymorphismp3;
public class MainBan {
private PCI p1;
private PCI p2;
public PCI getP1() {
return p1;
}
public void setP1(PCI p1) {
this.p1 = p1;
}
public PCI getP2() {
return p2;
}
public void setP2(PCI p2) {
this.p2 = p2;
}
public void work() {
p1.getGongNeng();
p2.getGongNeng();
}
}
package polymorphismp3;
public class Test {
public static void main(String[] args) {
MainBan mb = new MainBan();
PCI p1 = new ShouKa();// 声明父类类型,但是实例子类
PCI p2 = new SoundKa();
mb.setP1(p1);// 主板插两个卡
mb.setP2(p2);
mb.work();
}
}