接口是抽象方法和常量值定义的集合, 接口是一种特殊的抽象类, 只包含常量和方法的定义, 而没有变量和方法的实现.
接口->接口: extends, 类->类: extends, 类->接口:implements
1. 接口可以多重实现
2. 接口的所有变量都是 public static final类型, 可以不写, 默认. 接口的所有方法的abstract可以省略不写
3. 接口可以继承其他接口, 并添加新的属性和抽象方法.
4. 多个无关的类可以实现同一个接口
5. 一个类也可以实现多个无关的接口
6. 接口与实现类之间存在多态性
关键字:implements
public interface Valuable { public double getMoney(); } interface Protectable { public void beProtected(); } interface A extends Protectable { void m(); void getMoney(); } abstract class Animal { private String name; abstract void enjoy(); } class GoldenMonkey extends Animal implements Valuable, Protectable { public double getMoney() { return 10000; } public void beProtected() { System.out.println("live in the room"); } public void enjoy() { } public void test() { Valuable v = new GoldenMonkey(); v.getMoney(); Protectable p = (Protectable)v; p.beProtected(); } } class Hen implements A ,Valuable
{ public void m() {} public void beProtected() {} public double getMoney() { return 1.0; } public void getMoney() {} //这种不可以 }
时间: 2024-10-27 18:36:37