接口 接口是一个比抽象类还抽象的类,接口里所有的方法全是抽象方法,接口和类的关系是实现用的是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 构造方法: 抽象类有构造方法的 接口没有构造方法
|