JAVA基础--接口 interface

时间:2023-03-08 21:26:40

接口是抽象方法和常量值定义的集合, 接口是一种特殊的抽象类, 只包含常量和方法的定义, 而没有变量和方法的实现.

接口->接口: 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() {} //这种不可以
}