Java中什么时候使用extends,什么时候使用implements?

时间:2022-03-06 17:31:10
我一直有个误区,认为extends是专门给类用的,implement是专门给interface用的。近日在coding是发现项目框架中有如下代码,感到有些奇怪,所以今天调查了一下。
[java]  view plain copy
  1. public interface Interface1 extends Interface2,...,InterfaceN{  
  2. // TODO  
  3. }  

调查发现,有如下几种规则:

1.  类继承类时,只能是单继承:使用 extends ,例如:

[java]  view plain copy
  1. public class A extends B{  
  2. // TODO  
  3. }  

2. 类实现接口,多实现: 使用 implements 例如:

[html]  view plain copy
  1. public class A implements Interface1,...,InterfaceN{  
  2. // TODO  
  3. }  

3. 类继承类并且实现接口,可以实现一个类和多个接口,同时使用extends 和implement,例如:

[html]  view plain copy
  1. public class A extends B implements Interface1,...,InterfaceN{  
  2. // TODO  
  3. }  

4.接口继承接口时,多继承:使用 extends ,例如:

[java]  view plain copy
  1. public interface Interface1 extends Interface2,...,InterfaceN{  
  2. // TODO  
  3. }  

最后要说明的是,接口是不能implements接口的,否则会出现语法错误,例如:

[java]  view plain copy
  1. public interface Interface1 implements Interface2,...,InterfaceN{  
  2. // TODO  
  3. }  

Error:Syntax error on token "implements", extends expected

入门级选手,积累一下,转自:http://blog.csdn.net/zwy9002/article/details/6610532