Your final project for this course is the creation of a Virtual World Java application that results in a virtual world, complete with an object that will act as a human clone. A virtual world with a human clone would not be complete without additional objects for interaction, so you will be responsible for creating a “ShoutBox” and another object that will keep your human clone from getting lonely, and a virtual world application that will test your objects. Your final deliverables will include your working code (which your instructor will run in order to review your virtual world) as well as an annotated version of your written code that explains your reasoning for choices, how the code meets the given specifications for your project, how you ensured the accuracy and workability of your code, and methods used for testing and debugging.
The project is divided into four milestones, which will be submitted at various points throughout the course to scaffold learning and ensure quality finalsubmissions. These milestones will be submitted in Modules Two, Five, Seven, and Eight. The final submission will be submitted in Module Nine.
In this assignment you will demonstrate your mastery of the following course outcomes: Write simple, accurate object-oriented programs using primitive data types, variables, data structures, and object-oriented principles Implement classes that meet the given specifications of object instance variables and behaviors Create operative algorithms using sequential logic structures, decision control structures, and loops Create and use methods that accept parameters and return results Test and debug object-oriented programs for accuracy in program functionality Document object-oriented code with comments that articulate the purpose and behavior of code for various audiences
In creating your virtual world, you will need to create a MyClone class that will represent a virtual clone, another class that will represent a ShoutBox, andanother class of your choice. The class of your choice can be anything you want to exist in your virtual world (a cat, a bird, a computer, etc.). This project is aprototype and there will not be any graphics, so you will create an application that unit tests the functionality of your three classes (your MyClone class, yourShoutBox class, and the class of your choice).
Specifications for MyClone Feel free to add additional instance variables and behaviors, but your clone object must have instance variables firstName, lastName, and an introduction() method. The firstName and lastName instance variables will hold your first and last names. You will demonstrate your understanding of encapsulation by protecting your instance variables by making them private and by creating getters and setter methods for all instance variables. You should have at least one constructor created that initializes all instance variables. The introduction() method will introduce you to the virtual world by displaying a greeting, your full name, and anything else you would want to say. Partial class diagram for the MyClone object: