从The Java Tutorials:
谁能为此提供一个基本的伪类型。我不明白粗体字。
最佳答案
让我们声明两个接口(interface)和一个实现这两个接口(interface)的类:
interface I1 { }
interface I2 { }
class C implements I1, I2 { }
在以下代码中,可以看出
C
实例具有C
的类型以及I1
和I2
:C c = new C();
boolean isC = (c instanceof C); //true
boolean isI1 = (c instanceof I1); //true
boolean isI2 = (c instanceof I2); //true
现在让我们声明一个也实现
B
的I1
类:class B implements I1 { }
如果我们声明一个类型为
I1
的变量,则可以将其设置为C
的实例,然后将其重新分配为B
的实例:I1 i1 = new C();
i1 = new B();
我们还可以将其重新分配给
D
的实例,其中D
扩展了C
:i1 = new D();
...
class D extends C { }
关于java - 接口(interface)是Java中的一种类型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7275844/