A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 迎着太阳 中级黑马   /  2014-12-13 23:50  /  902 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

两者有什么差别吗?

9 个回复

倒序浏览
组合是A类拥有B类,继承是父类和子类的关系,如A类是B类
回复 使用道具 举报
继承的使用场合(继承与组合)

1 继承表示的是A类属于B类,即A:B,或者A is B。当A是B的子集时,可以采用继承的方式。比如狗是动物的一种,Dog is Animal,即可声明为@interface Dog:Animal

2 当A类不是B类的子集时,但是B类又需要拥有A类的部分属性或方法,这时可以考虑使用组合的方式。组合表示的是B类拥有A类,即B has A。如学生类拥有成绩类,即可用组合的方式。具体做法为声明成绩类和学生类。在学生类中声明一个成绩类的成员变量,即表示学生类拥有成绩类了。
回复 使用道具 举报
lnyg1992 发表于 2014-12-14 08:25
组合是A类拥有B类,继承是父类和子类的关系,如A类是B类

具体用法是一样的吧?
回复 使用道具 举报
HONG321 发表于 2014-12-14 08:44
继承的使用场合(继承与组合)

1 继承表示的是A类属于B类,即A:B,或者A is B。当A是B的子集时,可以采用继承 ...

谢谢你的解答。它们的思想是相同的吧?
回复 使用道具 举报
HONG321 发表于 2014-12-14 08:44
继承的使用场合(继承与组合)

1 继承表示的是A类属于B类,即A:B,或者A is B。当A是B的子集时,可以采用继承 ...

谢谢你的解答。它们的思想是相同的吧?
回复 使用道具 举报
HONG321 中级黑马 2014-12-14 17:37:03
7#
迎着太阳 发表于 2014-12-14 17:03
谢谢你的解答。它们的思想是相同的吧?

思想是不一样的,用法也是不一样的。你结合李明杰讲解继承和组合的视频比较一下
回复 使用道具 举报
HONG321 发表于 2014-12-14 17:37
思想是不一样的,用法也是不一样的。你结合李明杰讲解继承和组合的视频比较一下 ...

谢谢哈,我会再去看看的
回复 使用道具 举报
继承是继承父类的分支,子类要是父类的体系中的,组合不一定一定要是父类的品种
回复 使用道具 举报
arui12580 来自手机 中级黑马 2014-12-14 22:59:34
10#
组合是你有,继承是你是
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马