Java中继承和接口的区别

[复制链接]
查看11 | 回复4 | 2017-9-6 04:08:17 | 显示全部楼层 |阅读模式
理论上:类只能单继承,接口可以多继承(接口应该叫实现);实践上:我们说类的继承一般继承的是事物的属性,如:姓名,年龄,性别 等,而接口的继承(或者说实现)一般是继承事物的行为,如:行走,飞翔,游泳(这比较抽象,在一般项目中大部分是指对某事物的增删改查等操作)总之,单继承描述了“is a”的关系,即“子is a父”;多继承描述了“can do”的关系,即“子can do父”。这是我的笔记珍藏,希望对你有启发。
回复

使用道具 举报

千问 | 2017-9-6 04:08:17 | 显示全部楼层
晕。ls几位就对接口这么理解啊??继承体现父子关系,父亲有的儿子也有,代码重用率高。而接口往往是反向用的。举个例子就明白了。例如我们要建立两辆车的类,并提供相同的方法。先建立一个车的接口,提供一个s()方法。interface car{public void s();}接着建立两个具体的车的类,实现这个接口:class b
回复

使用道具 举报

千问 | 2017-9-6 04:08:17 | 显示全部楼层
1,一个类只能继承一个类,但是可以实现多个接口。2,依赖倒转原则: 依赖抽象(例如接口),不要依赖于实现。3,合成/聚合复用原则(CARP): 尽量使用合成/聚合,而不是继承关系达到复用的目的。4,接口传达的意思是:拥有某种功能,能干嘛,比如:Serializable代表可序列化的。5,继承传达的是意思是:is-a,比如:猫 是一个 动物,猫
回复

使用道具 举报

千问 | 2017-9-6 04:08:17 | 显示全部楼层
继承只能单继承,就是一个类只能有一个直接父类而一个类可以实现多个接口
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行