java中implements与extends的区别

一:implements是实现interface(接口),接口里面只给你提供了方法的名称,参数和返回值,

你需要在他的实现里面去具体化这些方法,即implements(实现)这个接口的具体功能;

 

二:extends本意是拓展,java中叫做继承,它既可以是class(类)继承class,也可以是interface(接口)继承interface,

“继承”顾名思义就是把他的父类(super class)里面的非final修饰的property(属性)、method(方法)的功能原封不动的拿过来用,

注意super class也不能是final修饰的;

1,父类和子类如果都是abstract,那么子类无需实现父类的abstract method,等待后面的子类去实现;

2,父类是abstract,子类不是abstract,那么子类必须实现父类的abstract method;

3,当父类不是abstract时,不管子类是不是abstract,其中的方法无特殊要求;

4,当父类和子类中含有同名method(非abstract)的时候(重载),若都是private,那么两个method互不影响,否则,调用的时候,优先调用子类的方法。

 

三:类只能继承一个,接口可以实现多个

posted @ 2012-04-13 00:14  cateatmycode  阅读(628)  评论(0编辑  收藏  举报