1.从jdk8开始默认方法(实例方法)
必须用default,默认用pubic修饰
默认方法不能创建对象,过继给了实例类,有实例对象调用
public interface Test1{
default void A(){
System.out.println("A方法");
};
}
class B implements Test1{
}
class Test{
public static void main(String[] args) {
B b=new B();
b.A();
}
}
2.静态方法,必须用static修饰,默认用public修饰,必须你用接口名自己调用
public interface Test1{
default void A(){
System.out.println("A方法");
}
public static void a(){
System.out.println("静态方法");
}
}
class B implements Test1{
}
class Test{
public static void main(String[] args) {
B b=new B();
b.A();
Test1.a();
}
}
3.私有方法,必须在接口内部被访问,从jdk9开始
public interface Test1{
default void A(){
System.out.println("A方法");
a1();
}
public static void a(){
System.out.println("静态方法");
}
private void a1(){
System.out.println("私有方法");
}
}
class B implements Test1{
}
class Test{
public static void main(String[] args) {
B b=new B();
b.A();
Test1.a();
}
}
1242

被折叠的 条评论
为什么被折叠?



