1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Andrei [34K]
3 years ago
11

1. Write program, WriteData.java, that writes the following data to file books.txt. Include the semicolons. Fiction;Abraham Linc

oln Vampire Hunter;Grahame-Smith;Wiley;NY;13.99;222 Fiction;Frankenstein;Shelley;Prescott;GA;7.99;321 NonFiction;Life of Kennedy;Jones;Pearson;MT;12.90;biography Fiction;Dracula;Stoker;Addison;CA;5.99;145 Fiction;Curse of the Wolfman;Hageman;Wesley;MA;10.59;876 NonFiction;How to Pass Java;Willis;Wiley;NY;1.99;technology Fiction;The Mummy;Rice;Addision;CA;7.99;954 NonFiction;History of Texas;Smith;Prescott;CA;9.75;history 2. Write class Publisher with attributes name and state. 3. Rewrite the Book class to include a type Publisher attribute. 4. Write two children of the Book class: FictionBook and NonFictionBook. FictionBook has an additional attribute, fictionCode. NonFictionBook has an additional attribute, catagoryCode. 5. Rewrite the BookTest program. Method buildInstances will read the data from the file, create instances of FictionBook and NonfictionBook from the data, assign these instances to the Book array and return the bookArray as before. Since it is reading data from the file, it does not have any method parameters. 6. Method createCharges should work the same.
Computers and Technology
1 answer:
Amiraneli [1.4K]3 years ago
7 0

Answer:

Check the explanation

Explanation:

WriteData.java:

import java.io.FileWriter;

import java.io.PrintWriter;

class WriteData {

  String[][] data;

 

  public WriteData() {

      // Data to write to the file

      data = new String[][]{{ "Fiction", "Abraham Lincoln Vampire Hunter", "Grahame-Smith", "Wiley", "NY", "13.99", "222"},

          {"Fiction", "Frankenstein", "Shelley", "Prescott", "GA", "7.99", "321"},

          {"NonFiction", "Life of Kennedy", "Jones", "Pearson", "MT", "12.90", "biography"},

          {"Fiction", "Dracula", "Stoker", "Addison", "CA", "5.99", "145"},

          {"Fiction", "Curse of the Wolfman", "Hageman", "Wesley", "MA", "10.59", "876"},

          {"NonFiction", "How to Pass Java", "Willis", "Wiley", "NY", "1.99", "technology"},

          {"Fiction", "The Mummy", "Rice", "Addision", "CA", "7.99", "954"},

          {"NonFiction", "History of Texas", "Smith", "Prescott", "CA", "9.75", "history"}};

      }

 

  public void writeToFile() {

      try {

          PrintWriter pw = new PrintWriter(new FileWriter("books.txt"));   // Creating an output stream to write to file

         

          // Writing data to the file line by line

          for (int i = 0; i < 8; i++) {

              pw.println(data[i][0] + ";" + data[i][1] + ";" + data[i][2] + ";" + data[i][3] + ";" + data[i][4] + ";" + data[i][5] + ";" + data[i][6]);

          }

         

          pw.close();       // Closing the created output stream

      }

      catch(Exception e) {

          System.err.println(e);

      }

  }

}

Publisher.java:

class Publisher {

  private String name, state;

 

  public Publisher(String name, String state) {

      this.name = name;

      this.state = state;

  }

 

  // Getters and Setters

  public String getName() {

      return name;

  }

  public void setName(String name) {

      this.name = name;

  }

  public String getState() {

      return state;

  }

  public void setState(String state) {

      this.state = state;

  }

 

  public String toString() {

      return name + ";" + state;

  }

}

Book.java:

class Book {

  private String title, author;

  private double price;

  private Publisher publisher;

  public Book(String title, String author, Publisher publisher, double price) {

      this.title = title;

      this.author = author;

      this.publisher = publisher;

      this.price = price;

  }

  public Double calculateCharge(int Qty){

      return getPrice()*Qty;

  }

  public String getTitle() {

      return title;

  }

  public void setTitle(String title) {

      this.title = title;

  }

  public String getAuthor() {

      return author;

  }

  public void setAuthor(String author) {

      this.author = author;

  }

  public String getPublisher() {

      return publisher.toString();

  }

  public void setPublisher(Publisher publisher) {

      this.publisher = publisher;

  }

  public double getPrice() {

      return price;

  }

  public void setPrice(double price) {

      this.price = price;

  }

}

FictionBook.java:

class FictionBook extends Book {

  String fictionCode;

 

  public FictionBook(String title, String author, Publisher publisher, double price, String fictionCode) {

      super(title, author, publisher, price);       // Calling the parent constructor to initialize values

      this.fictionCode = fictionCode;

  }

 

  // Getter and Setter

  public String getFictionCode() {

      return fictionCode;

  }

  public void setFictionCode(String fictionCode) {

      this.fictionCode = fictionCode;

  }

}

NonFictionBook.java:

class NonFictionBook extends Book {

  String categoryCode;

 

  public NonFictionBook(String title, String author, Publisher publisher, double price, String categoryCode) {

      super(title, author, publisher, price);       // Calling the parent constructor to initialize values

      this.categoryCode = categoryCode;

  }

 

  // Getter and Setter

  public String getCategoryCode() {

      return categoryCode;

  }

  public void setCategoryCode(String categoryCode) {

      this.categoryCode = categoryCode;

  }

}

BookTest.java:

import java.util.Scanner;

import java.util.*;

import java.io.File;

import java.io.FileNotFoundException;

public class BookTest {

  public static void main(String[] args) {

      // TODO code application logic here

     

      // Writing data to the file using WriteData.java program

      WriteData writeData = new WriteData();

      writeData.writeToFile();

     

      int[] BookQauntity = {12, 8, 3, 53, 7, 23, 14, 5, 6};

      Book[] book = new BookTest().buildInstances();

      Double GrandTotal= new BookTest().createCharges(BookQauntity, book);

      System.out.println("GrandTotal : "+ GrandTotal);

 

 

  }

      catch(FileNotFoundException e) {

          System.err.println("File not found");

      }

     

      return bk;

  };

 

  // ISBN info is removed

  Double createCharges(int[] BookQuantity, Book[] book){

      Double Gtotal =0.0, total=0.0;

      for(int i=0; i<8; i++){

          total = book[i].calculateCharge(BookQuantity[i]);

          System.out.println("Title : "+ book[i].getTitle() + ", Total Charge : "+ total);

          Gtotal +=total;

      }

     

      return Gtotal;

  };

}

You might be interested in
Print numbers 0, 1, 2, ..., userNum as shown, with each number indented by that number of spaces. For each printed line, print t
geniusboy [140]

Answer:

Please find the answer below

Explanation:

// Online C compiler to run C program online

#include <stdio.h>

int main() {

   // Write C code here

   //printf("Hello world");

   int userNum;

   int i;

   int j;

   

   scanf("%d", &userNum);

   /* Your solution goes here */

   for(i = 0; i<=userNum; i++){

       for(j = 0; j <= i; j++){

           printf(" ");

       }

       printf("%d\n", i);

   }

   return 0;

}

8 0
2 years ago
Good business ethics is a good marketing strategy. Discuss
Arada [10]
Good business ethics are the key to good marketing and success. Ethics portray whether an individual has good judgment, intelligence, and many more things that are essential to business. Without good ethics business as a whole would be ruthless. Some business ethics are even required by the law in some places and there are rules and regulation to trade. 

Hope that answered your question!
6 0
3 years ago
Which folder does the ipad saves my pictures?
saw5 [17]
It will save it in the pre-installed iphotos application.
Hope this helps. <span />
4 0
3 years ago
Read 2 more answers
The man-in-the-middle attack<br> means what
Tom [10]

Answer:

<em> where the attacker secretly relays and possibly alters the communications between two parties who believe that they are directly communicating with each other.</em>

Explanation:

4 0
3 years ago
A blue line, called a ____ line, that appears when you are dragging a GUI object on a Windows Form object indicates that the obj
ser-zykov [4K]

Answer:

snap

Explanation:

The line which appears when we are dragging an object of GUI on a object of  windows Form indicates that the object that is being dragged is aligned horizontally with the object which is connected by the blue line is called a snap line.

Hence we conclude that the answer to this question is snap line.

3 0
3 years ago
Other questions:
  • Which statement is true about the elements of the interface of a presentation program? The status bar appears at the top of the
    14·2 answers
  • Which of these sites would need additional investigation to check for reliability?
    8·2 answers
  • Which of the following examines the organizational resource of information and regulates its definitions, uses, value, and distr
    9·1 answer
  • Declare a char array named line of size 50, and write a statement that reads in the next line of console input into this array.
    6·1 answer
  • Please help with attached file
    8·2 answers
  • Machines may aid in making work easier over a longer distance. true or false.
    7·1 answer
  • (1) Output a menu of automotive services and the corresponding cost of each service. (2 pts)Ex:Davy's auto shop servicesOil chan
    9·1 answer
  • Write a line of code to convert time to hours. Remember there are 60 minutes in an hour. Then write a line of code to calculate
    9·2 answers
  • I live in Alabama and I’m ab to leave to go on a 3 week trip to France and I’m wondering how I can get LTE for my IPhone 6s Plus
    15·2 answers
  • Password ____ traverse the network searching for passwords from remote authentication systems.
    6·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!