java中对象属性可以是另外一个对象或对象的参考

对象的属性可以是另外一个对象或对象的参考
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。

通过这种方法可以迅速构建一个比较大的系统。

本章源码



class Motor {
    Light[] lights;
    Handle left, right;
    KickStart ks;
    Motor() {
        lights = new Light[2];
        lights[0] = new Light();
        lights[1] = new Light();
        left = new Handle();
        right = new Handle();
        ks=new KickStart();
    }
}

class Handle {
    Grip grip;//grip中文是把套的意思
    Handle() {
        grip = new Grip();
    }
    void turnLeft() {
        System.out.println("左转车把....");
    }
}

class Light {
    void turnon() {
        System.out.println("开灯.....");
    }
}
class KickStart {
    void kick() {
        System.out.println("踹一脚,启动.........");
    }
}
class Grip {
    void rollup() {
        System.out.println("往上转一下把套,发动.........");
    }
}

public class Test {
    public static void main(String[] args) {
        Motor myMotor = new Motor();
        System.out.println("夜间启动摩托车的步骤");
        for(int i=0;i<2;i++) myMotor.lights[i].turnon();
        myMotor.left.grip.rollup();
        myMotor.ks.kick();
    }
}

result is:
夜间启动摩托车的步骤
开灯.....
开灯.....
往上转一下把套,发动.........
踹一脚,启动.........