码迷,mamicode.com
首页 > 编程语言 > 详细

从头认识java-6.4 如何在聚合与继承之间选择

时间:2015-10-30 12:41:26      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:java

这一章节我们来聊一下在聚合与继承之间选择的问题。

在我们平常的编码里面,使用聚合或者继承都可以,或者两者可以混合使用也行,这个时候就需要做出抉择,因为代码以后还需要维护,怎么才能达到维护简单?代码可读?。。。

因此,我们必须在各种方案中做出抉择。

笔者是这样认为的:

如果新的类只是使用老的类的一部分功能,那么就是用聚合,直接new出来就可以了,满足need或者组合这个关系;

如果新的类必须是老的类的一个特殊例子,那么就是用继承,满足is-a或者is-like-a这种关系

例子:

车是交通工具。

代码:

/**
 * 
 */
package com.ray.ch05;

/**
 * @Package:com.ray.ch05
 * 
 * @TODO 测试
 * 
 * @date 2015 10 30
 * 
 * @time 11:42:19
 * 
 * @author JMSCADMIN
 * 
 * @version 1.0
 */
public class Test {

}

class Vehicle {
}

class Car extends Vehicle {
}

class BMW extends Car {
}

车满足is-a交通工具这个关系,BMW满足is-a车这种关系


车是由轮子、车门等组合成的。

/**
 * 
 */
package com.ray.ch05;

/**
 * @Package:com.ray.ch05
 * 
 * @TODO 测试
 * 
 * @date 2015 10 30
 * 
 * @time 11:42:19
 * 
 * @author JMSCADMIN
 * 
 * @version 1.0
 */
public class Test {

}

class Door {
}

class Wheel {
}

class Car {
	private Door leftDoor;
	private Door rightDoor;
	private Wheel leftForwardWheel;
	private Wheel leftBackwardWheel;
	private Wheel rightForwardWheel;
	private Wheel rightBackwardWheel;

}

车和轮子、门等满足车是由xxx组成的这种关系。


总结:这一章节简单讨论了如何在聚合与继承之间选择。



这一章节就到这里,谢谢。

-----------------------------------

目录


版权声明:本文为博主原创文章,未经博主允许不得转载。

从头认识java-6.4 如何在聚合与继承之间选择

标签:java

原文地址:http://blog.csdn.net/raylee2007/article/details/49508855

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