接口(interface)

发布时间 2023-11-15 14:23:38作者: news_one

一、前言

面向接口编程,抽象方法是模板,接口是规范

二、接口的基本内容:

    interface IFather{
        //静态常量  可以省略static和final关键字
        public static final String NAME = "张三";
        //抽象方法  可以省略abstract关键字
        public void eat();

        /*
        * 在JDK1.8中新增的静态方法
        * */
        public static void sleep(){
            System.out.println("sleep....");
        }
        /*
        * 在JDK1.8中之后可以在接口中声明default方法
        * */
        default void run(){
            System.out.println("run....");
        }
    }

三、接口和抽象类的区别?

比较点 抽象类 接口
定义 用abstract关键字来修饰的类 interfaec关键字来修饰
组成 抽象方法、普通方法、构造方法、成员变量、常量 抽象方法、静态常量、JDK1.8注释
使用 子类继承(extends) 实现类实现(implements)
关系 抽象类可以实现接口 接口是不能继承抽象类的
对象 都是通过对象的多态实现的 都是通过对象的多态实现的
局限 不能多继承,不能实例化 可以多继承,不能实例化
选择 建议选择接口,避免单继承 建议选择接口,避免单继承
实际 模板 标准