Java--接口

为什么需要接口?

接口可以理解为一种特殊的类,里面全部是由全局常量和公共的抽象方法所组成。
接口是解决Java无法使用多继承的一种手段,但是接口在实际中更多的作用是制定标准的。
**

接口: interface

**

格式: public interface 接口名{
          //抽象方法
       public void foo();
       //无方法体 默认是抽象方法(默认使用abstract修饰
       访问权限修饰符默认是public 访问权限修饰符只能是public
       所以 public abstract默认可省略)
       void foo();
           //属性
        public static final int age=19;
        //接口中的属性只能是静态常量 使用时必须赋初值 
        //默认是static final修饰 可以省略 访问权限修饰符只能是public
        int age=10;
 }

接口的特征:
1.接口不可以被实例化
2.实现类必须实现接口中的所有抽象方法**(implements)**
3.实现类可以实现多个接口(即解决了java多继承的问题)
4.接口中的方法同抽象类的方法一样没有方法体,接口中的方法默认使用 abstract修饰(可省略) 访问权限修饰符只能是public
5.接口中的变量必须都是静态常量(static final修饰 static final可省略 变量的访问权限修饰符只能是public(可省) 常量必须赋初值。
6.接口中默认所有方法都是抽象方法 无方法体但可以有参数列表(接口中不存在构造方法)

接口/抽象类中的方法:不去执行任何的操作,所以去实例化接口/抽象类调用方法也毫无意义;
继承:子类只可以继承一个父类 单继承
接口:通过去实现多个接口 可以实现意义上的多继承(java中并不存在多继承的概念)
`

 interface USB {
     //默认是 abstract 抽象的 访问权限修饰符是默认的public(只能是public)
    void read();
    void write();
}
public class YouPan implements USB {
   //实现接口 USB 并且重写它的read() 和write()方法
    @Override
    public void read() {
        System.out.println("U盘正在通过USB功能读取数据");
    }

    @Override
    public void write() {
        System.out.println("U盘正在通过USB功能写入数据");
    }
}
public class JianPan implements USB {
    //实现接口 USB 并且重写它的read() 和write()方法
    @Override
    public void read() {
        System.out.println("键盘正在通过USB功能读取数据");
    }

    @Override
    public void write() {
        System.out.println("键盘正在通过USB功能写入数据");
    }
}
public class USBTest {
    public static void main(String[] args) {
        //接口不能实例化
       //USB usb=new USB();
        YouPan youPan=new YouPan();
        JianPan jianPan=new JianPan();
        youPan.read();
        youPan.write();
        jianPan.read();
        jianPan.write();
    }
}
``
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李自桐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值