interface和abstract interface 有什么区别?今天来试验一下,实验代码如下:
public class Test {
public static void main(String[] args){
PA pa = new PA();
pa.printA();
PB pb = new PB();
pb.printB();
}
}
interface A{
public void printA();
}
abstract interface B{
public void printB();
}
class PA implements A{
public void printA(){
System.out.println("A");
}
}
class PB implements B{
public void printB(){
System.out.println("B");
}
}
首先可以正确编译运行,输出A、B。网上有说abstract interface 只能被interface 继承,不能直接被类implements的说法看来是错误的。
反编译A.class 和 B.class
interface A
{
public abstract void printA();
}
interface B
{
public abstract void printB();
}
可以看出
interface和abstract interface进行的是同样的处理。目前来看两则没有任何区别,欢迎大家讨论补充。