码迷,mamicode.com
首页 > 其他好文 > 详细

抽象类和接口的异同点

时间:2017-02-11 18:11:42      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:void   nts   code   color   ext   方法   oid   like   功能   

相同点:
都是不断向上抽取而来的。

不同点:
1,抽象类需要被继承,而且只能单继承。
    接口需要被实现,而且可以多实现。
2,抽象类中可以定义抽象方法和非抽象方法,子类继承后,可以直接使用非抽象方法。
    接口中只能定义抽象方法,必须由子类去实现。
3,抽象类的继承,*是is a关系*,在定义该体系的基本共性内容
    接口的实现是 *like a 关系*,在定义体系额外功能

举一个简单的例子:

犬按功能分:有导盲犬,搜爆犬。

 1 abstract class 2 {
 3     abstract void 吼叫();
 4 }
 5 
 6 interface 导盲
 7 {
 8     abstract void 导盲();
 9 }
10 
11 
12 class 导盲犬 extendsimplements 导盲
13 {
14     public void 吼叫()
15     {
16     }
17     public void 导盲(){}
18 }

 

抽象类和接口的异同点

标签:void   nts   code   color   ext   方法   oid   like   功能   

原文地址:http://www.cnblogs.com/kkkky/p/6389434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!