From 26c455b64d270ab7e61f5a211182cfaabfce9994 Mon Sep 17 00:00:00 2001 From: BinHong Lee Date: Wed, 27 Apr 2016 23:50:37 -0700 Subject: [PATCH] Book class commented MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Book.java - Added comments for Book.java - Added getter for id - Added setter for title - Removed the need of ‘status’ in constructor - overdueFine(int[]) not commented as it needs to be updated BookFactory.java - need for (String status) is removed --- Book.java | 38 ++++++++++++++++++++++++++++++++++---- BookFactory.java | 9 +++++++-- Main.java | 5 +++++ 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/Book.java b/Book.java index 9f860da..db695a1 100644 --- a/Book.java +++ b/Book.java @@ -1,24 +1,36 @@ +/* + * Written by : Bin Hong Lee + * Last edited : 4/27/2016 + */ + class Book { + //Declaring variable storages + //Book title private String title; + //Book ID private int id; //( AVAILABLE || RENTED || RESERVED || NOT AVAILABLE) private String status; + //Book due date private int[] dueDate = new int[3]; - public Book(int id, String status) + //Constructor without book title + public Book(int id) { this.id = id; - this.status = status; + this.status = "NOT AVAILABLE"; } - public Book(String title, int id, String status) + //Constructor with book title + public Book(String title, int id) { this.title = title; this.id = id; - this.status = status; + this.status = "AVAILABLE"; } + //Getters and setters public String getTitle() { if (title!=null) @@ -34,26 +46,44 @@ class Book return status; } + public int getId() + { + return id; + } + + public void setTitle(String title) + { + this.title = title; + } + + //Call to rent book, return if renting is successful public boolean rent(int[] dueDate) { + //Check if the book is available to be rented if(status != "AVAILABLE") { return false; } + //Update the due date of the book this.dueDate = dueDate; + //Update book status status = "RENTED"; return true; } + //Call to return the book public void returned() { + //Update book status status = "AVAILABLE"; } + //Calculate the overdue fine public double overdueFine(int[] currentDay) { double fine; + if(currentDay[0] > dueDate[0] || currentDay[1] > (dueDate[1] + 1)) { return 5; diff --git a/BookFactory.java b/BookFactory.java index c568704..b3b38c7 100644 --- a/BookFactory.java +++ b/BookFactory.java @@ -1,3 +1,8 @@ +/* + * Written by : Bin Hong Lee + * Last edited : 4/27/2016 + */ + import java.util.*; class BookFactory @@ -12,7 +17,7 @@ class BookFactory public void newBook() { - Book temp = new Book(id, "NOT AVAILABLE"); + Book temp = new Book(id); books.add(temp); id++; @@ -20,7 +25,7 @@ class BookFactory public void newBook(String title) { - Book temp = new Book(title, id, "NOT AVAILABLE"); + Book temp = new Book(title, id); books.add(temp); id++; diff --git a/Main.java b/Main.java index f94d66a..4297eb0 100644 --- a/Main.java +++ b/Main.java @@ -1,3 +1,8 @@ +/* + * Written by : Bin Hong Lee + * Last edited : 4/27/2016 + */ + class Main { static BookFactory books = new BookFactory();