背景:设计可控制若干台打印机的程序
建立父类
class Printer{
void open(){
System.out.println("open!");
}
void print(String s){
System.out.println("print:"+s);
}
void close(){
System.out.println("close");
}
}
建立惠普打印机,完全继承自打印机
class HPPrinter extends Printer{
}
建立佳能打印机,其中在关闭之前多了一个clean功能
class CanonPrinter extends Printer{
void clean(){
System.out.println("clean!");
}
void close(){
this.clean();//调用当前的clean方法
super.close();//继承父类的close方法
}
}
建立主函数
class Test{
public static void main(String args[]){
int flag=1;
if(flag==0){
HPPrinter hpPrinter=new HPPrinter();
hpPrinter.open();
hpPrinter.print("This is HP printing");
hpPrinter.close();
}
else if(flag==1){
CanonPrinter canonPrinter=new CanonPrinter();
canonPrinter.open();
canonPrinter.print("This is canon printing");
canonPrinter.close();
}
}
}