Composition with public objects : Access Control « Class « Java






Composition with public objects

 
// : c06:Car.java
// Composition with public objects.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. See copyright notice in CopyRight.txt.

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);
  }
} ///:~



           
         
  








Related examples in the same category

1.Visibility
2.The protected keywordThe protected keyword
3.Create a Singleton Object