
public class Car {
  final int immatriculation;
  final CarType carType;
  
  public CarType getCarType() {
    return carType;
  }

  public int getImmatriculation() {
    return immatriculation;
  }

  public Car(int immatriculation, CarType carType) {
    this.immatriculation = immatriculation;
    this.carType = carType;
  }

  @Override
  public String toString() {
    return immatriculation+" "+carType.toString();
  }
  // a Car instance can be a key of a Map
  @Override
  public boolean equals(Object obj) {
    if (! (obj instanceof Car)) return false;
    return ((Car) obj).immatriculation == immatriculation;
  }

  @Override
  public int hashCode() {
    return new Integer(immatriculation).hashCode();
  }
 
  
}
