50.3k views
4 votes
Each ticket has a unique number and a price. There are three types of tickets: walk-up tickets, advance tickets, and student advance tickets. Walk-up tickets are purchased the day of the event and cost $50. Advance tickets purchased 10 or more days before the event cost $30, and advance tickets purchased fewer than 10 days before the event cost $40. Student advance tickets are sold at half the price of normal advance tickets: When they are purchased 10 or more days early they cost $15, and when they are purchased fewer than 10 days early they cost $20. Implement a class called Ticket that will serve as the superclass for all three types of tickets. Define all common operations in this class, and specify all differing operations in such a way that every subclass must implement them. No actual objects of type Ticket will be created: Each actual ticket will be an object of a subclass type. Define the following operations: The ability to construct a ticket by number. The ability to ask for a ticket's price. The ability to println a ticket object as a String. An example String would be "Number: 17, Price: 50.0".

a. Implement a class called WalkupTicket to represent a walk-up event ticket. Walk-up tickets are also constructed by number, and they have a price of $50.
b. Implement a class called AdvanceTicket to represent tickets purchased in advance. An advance ticket is constructed with a ticket number and with the number of days in advance that the ticket was purchased. Advance tickets purchased 10 or more days before the event cost $30, and advance tickets purchased fewer than 10 days before the event cost $40.
c. Implement a class called StudentAdvanceTicket to represent tickets purchased in advance by students. A student advance ticket is constructed with a ticket number and with the number of days in advance that the ticket was purchased. Student advance tickets purchased 10 or more days before the event cost $15, and student.

User Winchestro
by
4.8k points

1 Answer

7 votes

Answer:

import java.util.Scanner;

public abstract class Ticket //abstract base class

private int number;

public Ticket(int number)

this.number = number;

public int getNumber()

return number;

public abstract double getPrice();

public abstract String toString();

public class WalkupTicket extends Ticket

public WalkupTicket(int number)

super(number);

public double getPrice()

return 50;

public String toString()

return Number : +getNumber() +, Price : +getPrice();

public class AdvanceTicket extends Ticket

private int days;

public AdvanceTicket(int number)

super(number);

public AdvanceTicket(int number,int days)

super(number);

this.days = days;

public double getPrice()

if(days>=10)

return 30;

else

return 40;

public String toString()

return Number : +getNumber() +, Price : +getPrice();

public class StudentAdvanceTicket extends AdvanceTicket

private int days;

public StudentAdvanceTicket(int number,int days)

super(number);

this.days = days;

public double getPrice()

Step-by-step explanation:

import java.util.Scanner;

public abstract class Ticket //abstract base class

private int number;

public Ticket(int number)

this.number = number;

public int getNumber()

return number;

public abstract double getPrice();

public abstract String toString();

public class WalkupTicket extends Ticket

public WalkupTicket(int number)

super(number);

public double getPrice()

return 50;

public String toString()

return Number : +getNumber() +, Price : +getPrice();

public class AdvanceTicket extends Ticket

private int days;

public AdvanceTicket(int number)

super(number);

public AdvanceTicket(int number,int days)

super(number);

this.days = days;

public double getPrice()

if(days>=10)

return 30;

else

return 40;

public String toString()

return Number : +getNumber() +, Price : +getPrice();

public class StudentAdvanceTicket extends AdvanceTicket

private int days;

public StudentAdvanceTicket(int number,int days)

super(number);

this.days = days;

public double getPrice()

User Wobblycogs
by
5.3k points