抽象类与接口区别
2018-03-15 22:47
337 查看
接口和抽象类的设计目的就是不一样的。
接口是对动作的抽象,而抽象类是对根源的抽象
1.抽象类和接口都不能被直接实例化
2.抽象类要被子类继承,接口要被子类实现
3.接口里面只能对方法进行声明,抽象类既可以对方法进行声明,实现
4.接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法
5.类可以实现很多个接口,但是只能继承一个抽象类
6.类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的
7.抽象类是 is a关系;而接口是has a关系
参考文档
https://segmentfault.com/a/1190000003750422
接口是对动作的抽象,而抽象类是对根源的抽象
1.抽象类和接口都不能被直接实例化
2.抽象类要被子类继承,接口要被子类实现
3.接口里面只能对方法进行声明,抽象类既可以对方法进行声明,实现
4.接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法
5.类可以实现很多个接口,但是只能继承一个抽象类
6.类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的
7.抽象类是 is a关系;而接口是has a关系
参考文档
https://segmentfault.com/a/1190000003750422