2016-04-05 3 views
0

私はaddメソッドの中に条件を追加しようとしました。そのため、ユーザが新しいアポイントメントにすでに値が入っているようなミスを犯した場合、エラーメッセージここ私のメソッドに条件を追加してユーザエラーを減らす

は私のaddメソッドは、私の質問は、私はエラーメッセージを生成するプログラムを入手するだろう方法です

public void add(Appointment a){ 
    appointmentList.add(a); 


} 

のですか? 私はすでにtryとcatchを使用しようとしています。

+1

私はこの記事やあなたが話しているコードでは本当に質問は表示されません。 – Stultuske

+0

パブリッククラスAppointmentBook { プライベートstatic final int NOTFOUND = -1; プライベートArrayList 予定リスト=新しいArrayList (); public void add(アポイントメントa){ \t appointmentList.add(a); \t \t } – Pato

+0

コードブロックを使用してコードを共有し、元のメッセージに入れてください。また、質問をしてください。 – Nico

答えて

0

throwを使用して特定の例外をスローし、あとで処理してエラーメッセージをプレビューすることができます。例のため :

public void add(Appointment a){ 
    if(a==null){ 
    throw new IllegalArgumentException("appointement can't be null"); 
    } 
    appointmentList.add(a); 


} 

あなたはまたRunTimeExceptionを拡張することにより、特定のAppointementAlreadyExistExceptionを作成し、それが必要とされるときにそれを投げることができます。

public class AppointementAlreadyExistException extends RuntimeException{ 
    // constructors 
    } 

と、次のようにそれを使用する:

public void add(Appointment a){ 
     if(a==null){ 
     throw new IllegalArgumentException("appointement can't be null"); 
     } 
    //equals in appointement must be overrided to give correct behaviour 
    if(appointmentList!=null && appointmentList.contains(a)){ 
     throw new AppointementAlreadyExistException(); 
    } 
    appointmentList.add(a); 


    } 

今この方法を呼び出すと、

 // let's assume we have an Appointement a 
try { 

    add(a) 

    }catch(AppointementAlreadyExistException ex){ 
    //display the information to the user saying that appointment 
    } 
+0

を読んでください。rafik – Pato

+0

@Patoは答えとしてマークすることができます –

関連する問題