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()