В данном случае этот шаг очень простой, поскольку мы создали только один метод, который используется в единственном месте. В общем случае вам нужно было бы запустить поиск по всем классам, котрые могли бы использвать этот метод.
  class Customer...
    public String statement()  {
      double totalAmount = 0;
      int frequentRenterPoints = 0;
      Enumeration rentals = this.rentals.elements();
      String result = "Rental Record for "+getName()+"\n";
      while( rentals.hasMoreElements()) {
        double thisAmount = 0;
        Rental each = ( Rental) rentals.nextElement();

        thisAmount = each.getCharge();

        // add frequent renter points
        frequentRenterPoints++;

        // add bonus for a two day new release rental
        if( each.getMovie().getPriceCode()==Movie.NEW_RELEASE &&
            each.getDaysRented()>1) frequentRenterPoints++;

        // show figures for this rental
        result += "\t"+each.getMovie().getTitle()+"\t"+
                  String.valueOf( thisAmount)+"\n";
        totalAmount += thisAmount;
      }

      // add footer lines
      result += "Amount owned is "+String.valueOf( totalAmount)+"\n";
      result += "You earned "+String.valueOf( frequentRenterPoints)+
                " frequent renter points";

      return result;
    }

Рис 1.3 Диаграмма классов после переноса метода рассчитывающего задолженность

В начало | предыдущая | следующая