1 class Rental { 2 private Movie _movie; 3 private int _daysRented; 4 5 public Rental(Movie movie, int daysRented) 6 { 7 _movie = movie; 8 _daysRented = daysRented; 9 } 10 11 public int getDaysRented() 12 { 13 return _daysRented; 14 } 15 16 public Movie getMovie() 17 { 18 return _movie; 19 } 20 21 // Replaces logic in amountFor in Customer 22 public double getCharge() // moved here from Customer 23 { 24 double result = 0; 25 switch (_movie.getPriceCode()) { 26 case Movie.REGULAR: 27 result += 2; 28 if (getDaysRented() > 2) 29 result += (getDaysRented() - 2) * 1.5; 30 break; 31 case Movie.NEW_RELEASE: 32 result += getDaysRented() * 3; 33 break; 34 case Movie.CHILDRENS: 35 result += 1.5; 36 if (getDaysRented() > 3) 37 result += (getDaysRented() - 3) * 1.5; 38 break; 39 } 40 return result; 41 } 42 } 43