Question: CSIS 2 1 2 Programming Assignment 4 A local non - profit wants to develop a Java Based Bible Reading Application. They have recruited you

CSIS 212 Programming Assignment 4
A local non-profit wants to develop a Java Based Bible Reading Application. They have recruited you to
help them in this endeavor. The application will store the Bible text organized in instances of four
classes:
Verse verse in the Bible. An instance of the Verse class will have the following methods supported:
1. String getText() returns the text of the verse instance.
2. String getId() returns the book, chapter, and verse number as a String.
3. String toString() returns the contents of the instance in the format: number text
4. A class constructor in the form: Verse(String id, String text)
5. Override toString() to display verse number : text
Chapter chapter in the Bible. An instance of Chapter will have the following methods supported:
1. ArrayList getVerses() returns a reference to the Verse collection in the Chapter
instance
2. String getId() returns the book and chapter number as a String
3. void addVerse(Verse v) adds a Verse instance to the collection in the Chapter instance
4. A class constructor in the form of Chapter(String bookname, String number)
5. String toString() returns a string containing all the verses in the Chapter instance. Hint: iterate
through the Verse list calling its toString(). At the start of the iteration, output the Chapter
number.
Book book in the Bible.
1. String getId() returns the name of the Book instance
2. ArrayList getChapters() returns a reference to the Chapter collection in the Book
instance
3. A class constructor in the form of Book(String name)
4. void addChapter(Chapter c) adds a Chapter instance to the collection in the Book instance
5. String toString() returns a string containing all the Verses in all the Chapters in the Book
instance. This is just doing the same thing as Chapter toString() except that you iterate over the
Chapter list calling toString() at each instance.
Bible
1. String getId() returns the translation of this Bible instance (i.e. NIV).
2. ArrayList getBooks() returns a reference to the Book collection in the Bible instance
3. Void addBook(Book b) adds a Book instance to the collection of Books in the Bible instance
4. String toString() returns the version followed by all the books, chapters, and verses in the
instance.
5. A class constructor in the form of Bible(String id)
Deliverables:
1. Construct the aforementioned classes. There should be a Verse.java, Chapter.java, Book.java,
and Bible.java.
2. Place classes in package biblemodel package.
3. Implement the methods described above. Be sure to document the methods using JavaDoc.
4. Construct a test class (BibleTest.java) with a main method. Place this class in the test package.
The main method should do the following:
a. Create a static main method as an entry point for the application. In that method:
b. Construct a Verse object and assign text as well as a verse number. Use the text: In the
beginning God created the heavens and the earth.
c. Construct a Chapter object and add the previous Verse object to its collection. Set the
Chapter number to 1.
d. Construct a Book object and add the previous Chapter object to its Chapter collection.
Set the book name to Genesis.
e. Construct a Bible object and set the version to NIV
f. Now add the verse instance to the chapter instance and the chapter instance to the
book instance. Finally, add the book instance to the bible instance.
g. Output the contents of your bible by calling System.out.println(bible.toString());
5. Turn project per standard requirements. Be sure to include a screen shot of the output window
showing the output of your project. Your output should look like:
NIV
NIV Genesis
NIV Genesis 1
NIV Genesis 1:1 In the beginning God created the heavens

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!