- 1、由interface定义。
- 2、只能包含常量和抽象方法(数据:默认常量public static final 无论什么类型修饰的都默认为final不可修改 方法:默认为抽象方法)。
- 3、接口不能被实例化(不能通过new 创建对象),接口需要被实现,实现接口的类必须重写接口中的所有方法。
- 4、需要实现的方法必须是公有的。
- 5、一个类可以实现多个接口,用","分隔。
- 6、需要同时继承和实现时,应该先继承,后实现。
- 7、接口可以继承接口()。
- 8、实现接口可以直接获得接口中的公有变量成员。
public interface A {
public static int a=0;///无论什么修饰都是默认final
abstract void add();
}
public class StaticClass implements A {
@Test
@Override
public void add() {
StaticClass c=new StaticClass();
System.out.println(a);//子类可以直接获得父类所有公有成员
}
}
接口回调
interface中定义抽象方法
public interface Comm {
public void f1();
}
其他方法中定义 interface 类的对象
public class A {
private Comm com;//通过控制反转的方式建立对象间的关系
public void setB(Comm com) {//通过接口类型为其设置
System.out.println("A's setB()");
this.b = b;
}
public void f1() {
b.f1();
}
}
通过对象拿到抽象方法,传入参数
其他类中 new 接口,实现其抽象方法,获得回调,拿到传入的参数