Заменяем на метод set.
  class Movie..
    public Movie( String name, int priceCode) {
      this.name = name;
      setPriceCode( priceCode);
    }
После традиционной компиляции и тестов можно добавлять новые классы. Аналог кода типа будет теперь представлен в объекте Price. Это будет представлено абстрактным методом в базовом классе и конкретной реализацией в наследниках:
  abstract class Price {
    public abstract int getPriceCode();
  }

  class ChildrensPrice extends Price {
    public int getPriceCode() {
      return Movie.CHILDRENS;
    }
  }

  class NewReleasePrice extends Price {
    public int getPriceCode() {
      return Movie.NEW_RELEASE;
    }
  }

  class RegularPrice extends Price {
    public int getPriceCode() {
      return Movie.REGULAR;
    }
  }
На этом этапе уже можно компилировать новые классы.
В начало | предыдущая | следующая