44 lines
935 B
Java
44 lines
935 B
Java
// reuse/Car.java
|
|
// (c)2016 MindView LLC: see Copyright.txt
|
|
// We make no guarantees that this code is fit for any purpose.
|
|
// Visit http://mindviewinc.com/Books/OnJava/ for more book information.
|
|
// Composition with public objects
|
|
|
|
class Engine {
|
|
public void start() {}
|
|
public void rev() {}
|
|
public void stop() {}
|
|
}
|
|
|
|
class Wheel {
|
|
public void inflate(int psi) {}
|
|
}
|
|
|
|
class Window {
|
|
public void rollup() {}
|
|
public void rolldown() {}
|
|
}
|
|
|
|
class Door {
|
|
public Window window = new Window();
|
|
public void open() {}
|
|
public void close() {}
|
|
}
|
|
|
|
public class Car {
|
|
public Engine engine = new Engine();
|
|
public Wheel[] wheel = new Wheel[4];
|
|
public Door
|
|
left = new Door(),
|
|
right = new Door(); // 2-door
|
|
public Car() {
|
|
for(int i = 0; i < 4; i++)
|
|
wheel[i] = new Wheel();
|
|
}
|
|
public static void main(String[] args) {
|
|
Car car = new Car();
|
|
car.left.window.rollup();
|
|
car.wheel[0].inflate(72);
|
|
}
|
|
}
|