抽象类和接口

抽象类

1.  抽象类用abstract 来定义,一般是public abstract class + 类名;

2. 抽象类里面可以写一般的方法,也可以写抽象方法,抽象方法只能用public或者protected修饰;

3. 抽象类不能被实例化,只能通过其他的类继承抽象类,然后通过实例化这个类来实现里面的抽象方法,如果这个类不能包含抽象类里面所有的抽象方法,那么这个类必须也成为抽象类;

4.抽象类使用extends关键字,接口使用implements关键字

接口 

1. 接口是一种极端的抽象类,即只包含抽象方法和常量,写接口不用 abstract class,而是使用 interface ;

2. 和抽象类一样,接口也不能被实例化,只能通过其他的实现类来实现接口里面的所有抽象方法;

3. 一个接口可以继承多个接口,一个类可以实现多个没有关系的接口;

4.实现类若implement一个继承了其他接口的接口,那这个实现类还是需要实现所有(包含那个被继承的接口)的抽象方法;

5.接口中默认的访问权限为public,所以重写接口的方法的访问权限不能小于public,故只能为public

抽象类与接口

1.由抽象类来实现接口,则不必重写接口的方法。可以全部不重写或只重写一部分方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容