Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

1. a. Create an abstract class named Book. Include a String field for the book\'

ID: 3685050 • Letter: 1

Question

1. a. Create an abstract class named Book. Include a String field for the book's title and a double field for the books price. Within the class, include a constructor that requires the book title, and add two get methods--one that returns the title and one that returns the price. Include an abstract method named setPrice(). Create two child classes of Book: Fiction and NonFiction. Each must include a setPrice() method that sets the price for all Fiction Books at $24.99 and for all NonFiction Books at $37.99. Write a constructor for each subclass, and include a call to setPrice() within each. Write an application demonstrating that you can create both a Fiction and NonFiction Book, and display their fields. Save the fields as Book.java, Fiction.java, NonFiction.java, and UseBook.java.

b. Write an application named BookArray in which you create an array that holds 10 Books, some Fiction and some NonFiction. Using a for loop, display details about all 10 books. Save the file as BookArray.java.

Explanation / Answer

Question 1 a.

Book.java


public abstract class Book {
   public String title;
   public double cost;
   public Book(String title){
       this.title = title;
   }
   public String getTitle() {
       return title;
   }
   public void setTitle(String title) {
       this.title = title;
   }
   public double getCost() {
       return cost;
   }
   public abstract void setCost();
}

Fiction.java


public class Fiction extends Book{
   public Fiction(String title){
       super(title);
       setCost();
   }
   public void setCost(){
       super.cost = 24.99;
   }
}

NonFiction.java


public class NonFiction extends Book{
   double cost;
   public NonFiction(String title){
       super(title);
       setCost();
   }
   public void setCost(){
       super.cost = 37.99;
   }
}

UseBook.java


public class UseBook {

   /**
   * @param args
   */
   public static void main(String[] args) {
       // TODO Auto-generated method stub
       Fiction f = new Fiction("Fiction Book");
       System.out.println("Displaying Fiction Book Detials....");
       System.out.println("Title : "+f.getTitle()+ " Cost : "+f.getCost());
       NonFiction n = new NonFiction("NonFiction Book");
       System.out.println("Displaying NonFiction Book Detials....");
       System.out.println("Title : "+n.getTitle()+ " Cost : "+n.getCost());      
   }

}

Output:

Displaying Fiction Book Detials....
Title : Fiction Book Cost : 24.99
Displaying NonFiction Book Detials....
Title : NonFiction Book Cost : 37.99

Question 1 b

BookArray.java


public class BookArray {

   /**
   * @param args
   */
   public static void main(String[] args) {
       // TODO Auto-generated method stub
       Book b[] = new Book[10];
       Fiction f1 = new Fiction("Finction Book1");
       Fiction f2 = new Fiction("Finction Book2");
       Fiction f3 = new Fiction("Finction Book3");
       Fiction f4 = new Fiction("Finction Book4");
       Fiction f5 = new Fiction("Finction Book5");
       NonFiction n1 = new NonFiction("NonFinction Book1");
       NonFiction n2 = new NonFiction("NonFinction Book2");
       NonFiction n3 = new NonFiction("NonFinction Book3");
       NonFiction n4 = new NonFiction("NonFinction Book4");
       NonFiction n5 = new NonFiction("NonFinction Book5");
       b[0] = f1;
       b[1] = f2;
       b[2] = f3;
       b[3] = f4;
       b[4] = f5;
       b[5] = n1;
       b[6] = n2;
       b[7] = n3;
       b[8] = n4;
       b[9] = n5;
       for(int i=0 ;i<b.length; i++){
           Book a = b[i];
           System.out.println("Title : "+a.getTitle()+ " Cost : "+a.getCost());
       }
   }

}


public class BookArray {

   /**
   * @param args
   */
   public static void main(String[] args) {
       // TODO Auto-generated method stub
       Book b[] = new Book[10];
       Fiction f1 = new Fiction("Finction Book1");
       Fiction f2 = new Fiction("Finction Book2");
       Fiction f3 = new Fiction("Finction Book3");
       Fiction f4 = new Fiction("Finction Book4");
       Fiction f5 = new Fiction("Finction Book5");
       NonFiction n1 = new NonFiction("NonFinction Book1");
       NonFiction n2 = new NonFiction("NonFinction Book2");
       NonFiction n3 = new NonFiction("NonFinction Book3");
       NonFiction n4 = new NonFiction("NonFinction Book4");
       NonFiction n5 = new NonFiction("NonFinction Book5");
       b[0] = f1;
       b[1] = f2;
       b[2] = f3;
       b[3] = f4;
       b[4] = f5;
       b[5] = n1;
       b[6] = n2;
       b[7] = n3;
       b[8] = n4;
       b[9] = n5;
       for(int i=0 ;i<b.length; i++){
           Book a = b[i];
           System.out.println("Title : "+a.getTitle()+ " Cost : "+a.getCost());
       }
   }

}

Output

Title : Finction Book1 Cost : 24.99
Title : Finction Book2 Cost : 24.99
Title : Finction Book3 Cost : 24.99
Title : Finction Book4 Cost : 24.99
Title : Finction Book5 Cost : 24.99
Title : NonFinction Book1 Cost : 37.99
Title : NonFinction Book2 Cost : 37.99
Title : NonFinction Book3 Cost : 37.99
Title : NonFinction Book4 Cost : 37.99
Title : NonFinction Book5 Cost : 37.99

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Chat Now And Get Quote