USB接口案例-小白学习中

经过接口和多态的学习,现在进行一个小实例
USB接口,包含打开设备功能,关闭设备功能。
电脑类,包含开机功能,关机功能,使用USB设备功能。
鼠标类,要实现USB接口,并具备点击的方法。
键盘类,要实现USB接口,并具备敲击的方法。
下面是实例。
USB接口:

public interface llUSB {
public abstract void open();
public abstract void close();
}

鼠标类:

public class Mouse implements llUSB{
@Override
public void open() {
System.out.println(“打开鼠标”);
}
@Override
public void close() {
System.out.println(“关闭鼠标”);
}
public void click(){
System.out.println(“你点了一下鼠标”);
}
}

键盘类:

public class KeyBoard implements llUSB{
@Override
public void open() {
System.out.println(“打开键盘”);
}
@Override
public void close() {
System.out.println(“关闭键盘”);
}
public void beat(){
System.out.println(“你敲打了一下键盘”);
}
}

电脑类:

public class llComputer {
public void poweron(){
System.out.println(“电脑开机”);
}
public void poweroff(){
System.out.println(“电脑关机”);
}
//使用USB设备的方法,使用接口作为方法的参数
public void User(llUSB USB){
USB.open();//打开设备
if (USB instanceof Mouse){//先判断
Mouse mouse=(Mouse) USB;//向下转型
mouse.click();
}
if (USB instanceof KeyBoard){//先判断
KeyBoard keyBoard=(KeyBoard) USB;//向下转型
keyBoard.beat();
}
USB.close();//关闭设备
}
}

测试类:

public class Test {
public static void main(String[] args) {
//首先创建一个电脑类
llComputer computer=new llComputer();
computer.poweron();
//创建一个鼠标,进行向上转型
llUSB mouse=new Mouse();//多态写法
//方法参数是USB类型,就传递进去USB鼠标
computer.User(mouse);
//创建一个USB键盘
KeyBoard keyBoard=new KeyBoard();//没有使用多态写法
//方法参数是USB类型,传递进去的是实现类对象
computer.User(keyBoard);//正确写法,也发生了向上转型
computer.User(new KeyBoard());//也是正确写法
computer.poweroff();
}
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值