2012-04-27 9 views
1

これは継承の問題です。チケットクラスは抽象クラスであり、Ticketクラスを拡張するAdvanceTicketクラスを作成しようとしています。 AdvanceTicketクラスは、イベントの前に購入されたチケットとして動作するものとし、チケットはイベント費用$ 30の10日前に購入されたものです。イベントが$ 40になる前に少なくとも1日で10日未満で購入されたチケット。抽象クラスから拡張クラスを作成するには?

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 
    } 

} 
+0

説明した動作はコントローラではなく、モデル(チケット)で行う必要があります。この宿題ですか? – Perception

+0

私は同じタイプの質問をしています。私はあなたがTicketを拡張するだけで、そのAdvanced Ticketクラスには何が入っているのだろうか? –

答えて

0
class AdvanceTicket extends Ticket 
0

クラスを作成するときには、単にTicketを拡張することができます。コードに関する

class AdvanceTicket extends Ticket { 
    // Implementation here 
} 

一般の発言:あなたはserialNumberを使用するつもりなら、それはstatic宣言する必要があります。また、/n\nである必要があります。あなたはいけないgetPrice()を上書きしたい場合は

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

、その後、あまりにも派生クラスで抽象としてそれを宣言しても抽象として派生クラスを宣言。

abstract class AdvanceTicket extends Ticket 
{ 
    public abstract getPrice(); 
} 
関連する問題