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互不影响,否则,调用的时候,优先调用子类的方法。
三:类只能继承一个,接口可以实现多个