日期:2014-05-20  浏览次数:20735 次

求教、、、、、、
在 java中 继承和组合 两个不是 很懂 求你们赐教!!!! 拜托了

------解决方案--------------------
1. 继承:用来表述“is-a”(是一个)的关系
2. 组合:用来表述“has-a”(有一个)的关系
 
3. 组合语法:
组合技术通常用于想在新类中使用现有累的功能而非它的接口的情况下。即在新类中放入某个类的对象,让其实现所需要的功能,但是新类的用户看到的只是为新类所定义的接口,而非嵌入类对象的接口。其实组合在编码中是经常用到的。
 
class Engine {
  
public void start() {}
public void rev() {}
public void stop() {}

}

class Wheel {

public void rollup()

}

public class Car {
Engine engine = null ;
Wheel wheel = null;

public Car() {

engine = new Engine(); //轮胎和引擎是汽车的一部分
wheel = new Wheel();


}
 组合重点在于组装,继承重点在于派生.是从两个不同角度对class功能的增强. 
比如说一个小团队有开发人员类,测试人员类,那么团队类就应该是这两个类的组合.具有两个类的功能,如果什么时候需要新的功能,比如翻译,可以很方便的加入到团队里来.而继承只是对一个类的派生,像上面的例子,如果开发人员和测试人员生个孩子,这个孩子具有父母双方的能力,这就叫继承.这时如果需要加个翻译的功能,就只能再找一个翻译和这个孩子再生个孩子了.