| И наконец... наследование | Страница 43 |
Это подразумевает замену атрибута priceCode на price
и изменение методов доступа:
class Movie...
private Price price;
public int getPriceCode() {
return price.getPriceCode();
}
public void setPriceCode( int priceCode) {
switch( priceCode) {
case REGULAR:
price = new RegularPrice();
break;
case CHILDRENS:
price = new ChildrensPrice();
break;
case NEW_RELEASE:
price = new NewReleasePrice();
break;
default:
throw new IllegalArgumentException( "Incorrect Price Code");
}
}
Опять компилируемм, запускаем тесты и убеждаемся, что все по-прежнему работает.
Оглавление | << страница 42 | страница 44 >>