Java 接口和多态练习

我们鼠标和键盘实现USB接口,那么我们鼠标和键盘就变成了USB设备,这时候我们就可以把它放到笔记本电脑里面去用

 1 package com.biggw.day10.demo07;
 2 
 3 /**
 4  * @author gw
 5  * @date 2019/11/2 0002 下午 16:46
 6  */
 7 public class Computer {
 8     public void open() {
 9         System.out.println("打开电脑!");
10     }
11 
12     public void close() {
13         System.out.println("关闭电脑!");
14     }
15 
16     public void useDevice(Usb usb) {
17         if (usb instanceof KeyBorad) {
18             KeyBorad keyBorad = (KeyBorad) usb;
19             keyBorad.open();
20             keyBorad.type();
21             keyBorad.close();
22         } else if (usb instanceof Mouse) {
23             Mouse mouse = (Mouse) usb;
24             mouse.open();
25             mouse.click();
26             mouse.close();
27         }
28     }
29 }
Computer
 1 package com.biggw.day10.demo07;
 2 
 3 /**
 4  * @author gw
 5  * @date 2019/11/2 0002 下午 16:42
 6  */
 7 public interface Usb {
 8     public abstract void open();
 9 
10     public abstract void close();
11 }
Usb 接口
 1 package com.biggw.day10.demo07;
 2 
 3 /**
 4  * @author gw
 5  * @date 2019/11/2 0002 下午 16:44
 6  */
 7 public class Mouse implements Usb {
 8     @Override
 9     public void open() {
10         System.out.println("打开鼠标!");
11     }
12 
13     @Override
14     public void close() {
15         System.out.println("关闭鼠标!");
16     }
17 
18     public void click() {
19         System.out.println("点击鼠标!");
20     }
21 }
Mouse Usb接口的实现类
 1 package com.biggw.day10.demo07;
 2 
 3 /**
 4  * @author gw
 5  * @date 2019/11/2 0002 下午 16:43
 6  */
 7 public class KeyBorad implements Usb {
 8     @Override
 9     public void open() {
10         System.out.println("打开键盘!");
11     }
12 
13     @Override
14     public void close() {
15         System.out.println("关闭键盘!");
16     }
17 
18     public void type() {
19         System.out.println("键盘输入文字!");
20     }
21 }
KeyBoard Usb接口的实现类
 1 package com.biggw.day10.demo07;
 2 
 3 /**
 4  * @author gw
 5  * @date 2019/11/2 0002 下午 16:52
 6  */
 7 public class Main {
 8     public static void main(String[] args) {
 9         Usb usb = new KeyBorad();
10         Usb usb1 = new Mouse();
11 
12         Computer computer = new Computer();
13         computer.open();
14         computer.useDevice(usb);
15         computer.useDevice(usb1);
16         computer.close();
17 
18         /*点击鼠标!
19         打开电脑!
20         打开键盘!
21         键盘输入文字!
22         关闭键盘!
23         打开鼠标!
24         关闭鼠标!
25         关闭电脑!*/
26     }
27 }
Main 方法入口

猜你喜欢

转载自www.cnblogs.com/biggw/p/11782843.html