Sko*_*gen 4 java interface class
假设我有以下代码......
interface A{
  void a();
}
interface B extends A{
  void b();
}
class ImplementOne implements B{ 
  public void a(){};
  public void b(){};
}     
class ImplementTwo implements B, A{ 
  public void a(){};
  public void b(){};
} 
无论类ImplementTwo是实现B和A,还是只实现B,它仍然需要在接口A中实现方法a(),因为接口B扩展了接口A.是否有任何理由明确地做
...implements B, A
而不仅仅是
...implements B  
?
在行为方面,这两种方法没有区别.就字节码信息而言,在涉及实现接口的信息方面存在细微差别.例如:
Class<?>[] interfaces = ImplementTwo.class.getInterfaces();
for (int i = 0; i < interfaces.length; i++) {
    System.out.println(interfaces[i]);
}
将implements B, A在使用时返回两个类实例,而在使用implements B它时将返回一个实例.
仍然,true使用两种方法返回以下内容:
A.class.isAssignableFrom(ImplementTwo.class)