如何从抽象类中创建扩展类?

时间:2012-04-27 03:48:09

标签: java inheritance

这是一个继承问题,而事实是Ticket类是抽象的,我正在尝试创建一个扩展Ticket类的AdvanceTicket类。 AdvanceTicket课程应该作为在活动前购买的门票,并且在活动开始前10天购买的门票价格为30美元。在活动开始前至少1天但不到10天购买的门票价格为40美元。

public abstract class Ticket {

    private int serialNumber;

    public Ticket() {
        serialNumber = getNextSerialNumber(); { 
        }
        //returns the price for this ticket
        public abstract double getPrice();
    }
    public String toString() {
        return "Number: " + serialNumber + "/nPrice: " + getPrice();
    }
    //returns a new unique serial Number
    public static int getNextSerialNumber() {
    //implementation not shown  
    }

}

3 个答案:

答案 0 :(得分:2)

class AdvanceTicket extends Ticket
{
     public double getPrice() //you must override abstract method ie. getPrice();
     {
           .......
     }
} 

如果你不想覆盖 getPrice(),那么在派生类中也将其声明为 abstract ,并将派生类声明为抽象。

abstract class AdvanceTicket extends Ticket
{
   public abstract getPrice();
}

答案 1 :(得分:0)

 class AdvanceTicket extends Ticket

答案 2 :(得分:0)

您可以在创建课程时简单地扩展Ticket

class AdvanceTicket extends Ticket {
    // Implementation here
}

关于代码的一般注释:如果您要使用serialNumber,则应将其声明为static。此外,/n应为\n