A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Oneforall 初级黑马   /  2018-4-9 22:40  /  1193 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

接口
        接口是一个比抽象类还抽象的类,接口里所有的方法全是抽象方法,接口和类的关系是实现用的是implements。接口和抽象类一样不能实例化。
                它的出现是为了解决类单一继承的局限性。
        格式:
                         interface 接口名 {}
        示例代码:
interface Animal {
        public static final int num = 10;
        public abstract void eat();
}
class Cat implements Animal {
        public void eat() {
        }
}
接口的成员特点
        只能有抽象方法
        只能有常量
        默认使用public&abstract修饰方法
        只能使用public&abstract修饰方法
        默认使用public static final来修饰成员变量
        类与接口的关系是实现关系,一个类实现一个接口必须实现它所有的方法,除非这个类是一个抽象类。
建议:建议大家手动的给上默认修饰符
接口和类之间的各种关系
         类与类:继承关系,单一继承,多层继承
         类与接口:实现关系,多实现
         接口与接口的关系:继承关系,多继承
接口的优点:
类与接口的关系,实现关系,而且是多实现,一个类可以实现多个接口,类与类之间是继承关系,java中的继承是单一继承,一个类只能有一个父类,打破了继承的局限性。
接口和抽象类的区别
共性:不断的抽取,抽取出抽象的概念
区别1:与类的关系
       类与接口是实现的关系,而且是多实现,一个类可以实现多个接口
       类与抽象类是继承关系,java中的继承是单一继承,一个类只能有一个父类,Java中的继承是多层继承
区别2:成员
       成员变量:
                  抽象类可以有成员变量,也可以有常量
                  接口只能有常量
       成员方法:
                  抽象类可以有抽象方法,可以有非抽象方法
                 接口只能有抽象方法,而且方法有默认修饰符 public abstract
       构造方法:
                 抽象类有构造方法的
                 接口没有构造方法

1 个回复

倒序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马