Write a program that manages a list of train tickets, JAVA Programming

A fictitious train company, 'Transrail', has commissioned you to write a program that manages a list of train tickets.

The program should display a text menu that prompts the user to add, retrieve and delete tickets, as well as display summary information. The data structure used to store ticketing information should be an array. It should prevent a seat from being double-booked. 

The program should be able to distinguish, store and display both standard and first class tickets on-the-fly. Data will also be persistent between each execution of the program, by it loading data from a file at startup, and dumping the contents of the train ticket list when quitting.

Class Definitions
The basic TrainTicket class models information that describes a single train ticket. It should store three pieces of data:

  • seat number: an integer (e.g. 12)
  • passenger name: a string (e.g. "John Doe")
  • duration: an integer that measures the legs in the journey (e.g. 3)

There should also be a provision to return a ticket's price, which is currently calculated at a constant $9 for each leg of the journey (e.g. a three-leg train ticket will cost $27). After construction, all data in a TrainTicket object should not be modifiable under any circumstances.
The FirstClassTicket class is a subclass of TrainTicket. This ticket provides passengers with access to the bar car and a sleeper cabin. First class tickets have a greater cost: each leg of the journey is $20 more than a normal train ticket (e.g. a three-leg first class ticket will cost $87).
It also has an option not available to normal train tickets: personal waiter service. If this is selected, the ticket incurs a $15 flat fee. This added fee should be 'invisible' (i.e. it should be included in the ticket price, when the price accessor is called.) The waiter option can only be chosen at construction; it cannot be toggled afterwards.

Posted Date: 2/16/2013 4:14:40 AM | Location : United States

Related Discussions:- Write a program that manages a list of train tickets, Assignment Help, Ask Question on Write a program that manages a list of train tickets, Get Answer, Expert's Help, Write a program that manages a list of train tickets Discussions

Write discussion on Write a program that manages a list of train tickets
Your posts are moderated
Related Questions
Task 1 Create a new project in Eclipse called Assignment 1. Within this project create a package called task01. 1/ Download the class Date (you must use this class - no

Question: (a) Draw out a UML class diagram that captures the following information: An Employee is a kind of Person. An ATM is a kind of Machine. Both an Employee and an ATM

This assignment is intended to write a simple program in Java and to use the concept of Object Oriented Technology. Open a project named "MyProject" in NetBean. Under this proje

Android app for evaluating of distance Project Description: The request is to prepare an app for Android. The application needs to run on tablet (7 "or larger) and the layout

The event handler attribute consists of three elements. Write about each of them? 1. The identifier of the event handler. 2. The equal sign. 3. A string consisting of JavaScrip

What do mean by synchronized methods and synchronized statements ?

Change encrypted HSQL database into CSV format Project Description: We have an encrypted HSQL Database which we have to convert into csv format. HSQL DB . We have java app

Problem Definition A new Met Office web application will allow users of their web site to view rainfall statistics for months and years in the UK. The application allows the m

Distributed / Network Oriented Java is network friendly -- both in its portable, threaded nature, and since common networking operations are built-in to the Java libraries.