Как сделать метод, который маркирует объект

public class Book { 
String title; 
boolean borrowed; 
// Creates a new Book 
public Book(String bookTitle){ 
    bookTitle= "The Da Vinci Code";
} 

// Marks the book as rented 
public void borrowed() { 


} 

// Marks the book as not rented 

public void returned() { 


} 

в основном для домашней работы я должен сделать класс книги, и эти методы являются частью, которую я понятия не имею, как ее заполнить. Я не могу понять, как создать метод, чтобы пометить книгу как заимствованную и возвращенную, чтобы я мог использовать их для логический метод, который я не опубликовал, потому что я хочу выяснить остальное самостоятельно.

4 ответа

Решение

Идея, лежащая в основе всего этого, заключается в том, что метод может изменять внутреннюю структуру объекта,

передать состояние объекта в другое новое состояние.

Пример:

public class Book{

 private boolean isRented;

 public void borrow(){
     isRented = true; // you change your internal structure and in the new state is borrowed
 }

 public void returned(){
   isRented = false; // the same here
 }

}

А теперь в основном:

public static void main(String args []){
   //create a new book
   Book book = new Book();

   //rent the book
   book.borrow();
   //now i want to return
   book.returned();

}

Что произойдет, если вы захотите предоставить логический метод, который возвращает, если книга isRented()? Если вы можете понять себя, тогда вы понимаете суть.

Попробуйте arraylist, добавьте / удалите, поскольку люди проверяют / возвращают книги. Обозначьте каждую книгу номером.

Этот форум не делать домашнее задание. Если вам нужна помощь в выполнении домашних заданий, вам нужно задать конкретный вопрос, а не: я не знаю, как это сделать, дайте мне немного кода. Пожалуйста, прочитайте свою книгу и изучите, она вам только поможет.

Вы должны создать массив книг, которые у вас есть, а затем перебрать массив, используя индекс с типом данных логического флага, чтобы определить, сдана ли книга в аренду. А затем распечатать сообщение на основе значения индекса.

 int rentedAtIndex = -1;

for(int i = 0; i < bookObj.length; i++) {
    if(bookObj[i].getName().equals(input)) {

        rentedAtIndex = i;  // Store the index for a future reference 
        break;             // break if the condition is met
    }
    }
       if(rentedAtIndex >= 0)
          System.out.println("The Book is Avavailbe for borrwoing  !");
       else
          System.out.println("The Book Is rented, Please try some other time!");
}
public class Book  {
   private boolean isOut;

   ...

   public setBorrowed(boolean is_out)  {
      isOut = is_out;
   }

   public isBorrowed()  {
      return  isOut;
   }
}

Тогда вы могли бы сделать

Book bookIt = new Book("It by Stephen King");
bookIt.setBorrowed(true);    //Taken out of the library.
Другие вопросы по тегам