Talent agency system, JAVA Programming

Assignment Help:

Talent agencies like ICM, CAA and Paradigm represent writers, directors and actors (among other talent).  These agencies take in hundreds of millions of dollars a year collecting 10% from each of their clients.  We would like to get them to spend some of their money on our software tracking system that helps them organize and bill their clients.  Before we do anything, we'll have to create some base classes and derived classes.

On the other hand, if you are not so interested in stellar actors, but rather in stellar models in astrophysics, have a peek at one of the options further down.

OPTION A (Basic):  A Talent Agency System

Create a base class called Client that has the following private members:

  • String name - The name of the Client.
  • long income_this_year - how much the Client made so far this year.
  • double percent_cut - usually .10, but you can always make a deal for less if you are in demand and easy to market.
  • MIN_INCOME_VAL, MAX_INCOME_VAL, MIN_NAME_LEN, MAX_NAME_LEN - some static finals to control the values passed into mutators.

Provide the usual complete set of constructors, mutators and accessors for this class.  Also provide a Display() method that displays member data.

The industry needs different information from actors than it does from writers.  For example, the writer's age or sex usually doesn't matter, but for actors, this information is crucial.  On the other hand, special training, degrees or skills are often important when marketing a writer (law degree, technical/science degree, CIA experience) that don't really matter for actors.

Derive a class Writer from Client that has the following additional members:

  • boolean technical - true if the writer has background in technology
  • boolean government - true if the writer has background in government/politics
  • boolean international - true if the writer has a great deal of travel experience
  • String rank - one of the following:  "staff writer", "story editor", "co-producer", "producer", "co-executive producer", "executive producer". There are the common ranks that determine the level that the writer is placed on a show or film. You can make this member a char or int, as long as you have a toString() or Stringize() method to get the String value from it.

Derive a class Actor from Client that has the following additional members:

  • char gender (M or F)
  • int age

Provide the usual complete set of constructors, mutators and accessors for these classes, being sure as always, to filter out illegal arguments.  Use function and constructor chaining whenever possible to eliminate code duplication.  Be sure to have at least one method, Display() in each sub-class that displays a complete report for the object, overriding the corresponding method from the base.

Create a class Agent that contains:

  • String name - the Agent's name
  • Client[] my_Clients - an array of Client references.  Allocate an array of some fixed size, MAX_CLIENTS, but don't instantiate individual Clients ... we allow this array to point to the caller's Client objects.
  • int num_Clients - the current number of Clients this Agent has.
  • MAX_CLIENTS, MIN_NAME_LEN, MAX_NAME_LEN - some static finals to control the values passed into mutators.

Give the Agent class the minimal constructors plus these methods:

  • AddClient(Client client) - puts client into the Agent's list.
  • RemoveClient(Client client) - removes client by squeezing him out of the list.
  • ShowClientsShort() - Displays a list of all this Agent's Clients' names (only names).
  • ShowClientsLong() - Displays a list of all the Clients, using the Client display method.
  • double GetIncome() - Returns the dollar amount collectable from all Clients so far this year (based on the tally of the Client member data, percent_cut, and income_this_year.

Create a main program that instantiates a number of Actors and Writers, displays a few of their data to the screen, individually (not all).  Next, instantiate one Agent, and place some of the Actors and Writers into the Agent's list.  Print out the Agent's Clients' names demonstrating both ShowClients---() methods, and show how much money the Agent is going to get this year.


Related Discussions:- Talent agency system

SMALLTALK PROGRAMING, YOUR EXPERT CAN DEAL WITH SMALLTAK PROGRAMMING AND BP...

YOUR EXPERT CAN DEAL WITH SMALLTAK PROGRAMMING AND BPMN AND DoME BECAUSE I HAVE PROJECT RELATED WITH THIS PROGRAMING

Java 2 micro edition - programming for mobile phones, You must design, code...

You must design, code and demonstrate a J2ME program (a program capable of running on mobile telephones) according to the specification given in the next section.  The overall cour

Exercise\servletexercise, Ask question # Write a servlet to display a table...

Ask question # Write a servlet to display a table that contains factorials for the numbers from 0 to 10,

Explain multiple initializers and incrementers, Explain Multiple Initialize...

Explain Multiple Initializers and Incrementers ? Sometimes it's essential to initialize several variables before starting a for loop. Similarly you may need to increment more t

Create java threads, Create a thread in either a C or a Java program and ru...

Create a thread in either a C or a Java program and run it. The thread should read a keyboard value "x" and exit from the code, or it can also use an "ESC" to exit. That is, the t

Website for swapping and selling books, Website for swapping/selling books ...

Website for swapping/selling books Project Description: Seeking a website where students can sell and buy books. I want them to swap books as well. Payment options are requir

Javascript Issue, I am having trouble with the code below because I am tryi...

I am having trouble with the code below because I am trying to call the text field input type so that whenever someone enters a number above 10 it responds with the alert shown bel

Javascript validarion, 1. Obtaining the new script: Download and save the a...

1. Obtaining the new script: Download and save the attached comment CGI mailer script form-mail2.pl to your server''s cgi-bin directory, and change the permissions on the script to

Writing a program with all the primitive, Problem 1 Explain and Define ...

Problem 1 Explain and Define the following concepts with appropriate examples a) Superclass b) Subclass c) Inheritance d) Exceptions e) Stream classes >>Defining and expl

Area under curve, java code for finding area under curve y=f(x) between x=a...

java code for finding area under curve y=f(x) between x=a and a=b integrate y=f(x) between the li,its of a and b. the area under a curve between two points can be found by doing a

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd