接口多态实例(电脑USb实例)

电脑类

public class Computer {
    public void  powerOn(){
        System.out.println("笔记本电脑开机");

    }
    public void  powerOff(){
        System.out.println("笔记本电脑关机");

    }
    public void  usbDevice(Usb usb){
        usb.open();
         if (usb instanceof Mouse){
            Mouse mouse=(Mouse) usb;//向下转型
            mouse.type();
        }
        usb.close();
    }
}

usb接口

package cn.itcast.day04.demo07;

public interface Usb {
    public abstract void open();
    public abstract void close();


}

鼠标类

public class Mouse implements Usb{

    @Override
    public void open() {
        System.out.println("打开鼠标");
    }

    @Override
    public void close() {
        System.out.println("关闭鼠标");
    }
      public void type(){
        System.out.println("ziji");
    }
}

主函数

public class Demo {
    public static void main(String[] args) {
        Computer computer=new Computer();
        computer.powerOn();

       /* Mouse mouse=new Mouse();
        Usb usb=mouse;*/
        Usb usb=new Mouse();//可以代替


        computer.usbDevice(usb);
        //computer.usbDevice(mouse);

        computer.powerOff();
    }
}

结果

笔记本电脑开机
打开鼠标
ziji
关闭鼠标
笔记本电脑关机

发布了41 篇原创文章 · 获赞 13 · 访问量 5904

猜你喜欢

转载自blog.csdn.net/qq_41344974/article/details/105024259