組合、繼承和代理三者的定義:
演示代碼如下:
public class Computer {
public Computer() {
CPU cpu=new CPU();
RAM ram=new RAM();
Disk disk=new Disk();
}
}
class CPU{ }
class RAM{ }
class Disk{ }
繼承:子類需要具有父類的功能,各子類之間有所差異。like Shape類作為基類,子類有Rectangle,CirCle,Triangle……代碼不寫了,大家都經常用。
演示代碼如下:
public class PlaneDelegation{
private PlaneControl planeControl; //private外部不可訪問
/*
* 飛行員權限代理類,普通飛行員不可以開火
*/
PlaneDelegation(){
planeControl=new PlaneControl();
}
public void speed(){
planeControl.speed();
}
public void left(){
planeControl.left();
}
public void right(){
planeControl.right();
}
}
final class PlaneControl {//final表示不可繼承,控制器都能繼承那還得了。。
protected void speed() {}
protected void fire() {}
protected void left() {}
protected void right() {}
}