8.接口

接口是抽象类的延伸,可以将它看作是存粹的抽象类,接口中的所有方法都没有方法体。接口的方法默认就是public abstract,变量默认就是public static final,可以将draw()方法封装到一个接口中,使需要draw()方法 的类实现这个接口,同时也继承图形类,这就是接口存在的必要性。
接口使用interface关键字进行定义:
public interface drawTes{
void draw()//接口内的方法,省略abstract关键字
}
一个类实现一个接口可以使用Implements关键字,在接口中定义的方法必须被定义为Public或abstract形式,其他修饰符不被Java编译器认可,即使不声明为public形式,他也是Public。
在接口中定义的任何字段都自动是static和final的。
interface drawTest{
public void draw();
}
class 平行四边形 extends 四边形 implements drawTest{
pubLi void draw(){     //由于该类实现了接口,所以需要覆盖draw()方法
System.out.println("平行四边形.draw()");
}
void doAnything(){
//dosomething
}
}
class 正方形 extends 四边形 implements drawTest{
pubLi void draw(){     //由于该类实现了接口,所以需要覆盖draw()方法
System.out.println("正方形.draw()");
}
void doAnyThing(){
//something
}
}
public class 四边形{ //something  }
 
接口的统一标准
interface USB {
public void intall();// 加载驱动
 
public void work();// 工作
}
 
class Computer {
public void plugin(USB usb) {//接收统一的USB对象
usb.intall();
usb.work();
}
 
}
 
class Phone implements USB {  //实现接口
 
@Override
public void intall() {
// TODO Auto-generated method stub
System.out.println("安装手机驱动.....");
 
}
 
@Override
public void work() {
// TODO Auto-generated method stub
System.out.println("手机成功连接电脑!");
}
 
}
 
class Print implements USB {
 
@Override
public void intall() {
// TODO Auto-generated method stub
System.out.println("打印机驱动正在导入....");
}
 
@Override
public void work() {
// TODO Auto-generated method stub
System.out.println("打印机已成功连接电脑!!!");
}
 
}
 
public class Test {
public static void main(String[] args) {
 
Computer computer = new Computer();
computer.plugin(new Phone());//向上转传入子类对象
computer.plugin(new Print());
}
}

转载于:https://www.cnblogs.com/cainame/p/10091982.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值