2016-04-12 22 views
0

私はいくつかの助けを得ることができるかと思うだけです。スーパークラスのサブクラスメソッドを呼び出す

私は次のメソッド呼び出ししようとしています:私のスーツスーパークラスのメソッドに私のMorningSuitサブクラスから

public void updateBrand(Scanner input){ 
    System.out.println("1 - HIGHSTREET\n2 - FRENCHCONNECTION\n3 - TEDBAKER\nSelect type of brand (Enter number)"); 
    int choice = input.nextInt(); 
    switch (choice) { 
    case (1): 
     setBrand(Brand.highstreet); 
     System.out.println("Brand of has been changed to HIGHSTREET"); 
     break; 
    case (2): 
     setBrand(Brand.frenchconnection); 
     System.out.println("Brand of has been changed to FRENCHCONNECTION"); 
     break; 
    case (3): 
     setBrand(Brand.tedbaker); 
     System.out.println("Brand of has been changed to TEDBAKER"); 
     break; 
    default: System.out.println("Invalid input"); 
     break; 
    } 

    } 

を:

public void makeChange(Scanner input){ 
    System.out.println("Are you sure you want to change this suit? (y or n)"); 
    String choice; 
    choice = input.next(); 
    if (choice.toLowerCase() == "y") { 
     updateBrand(input); 
    } 
    else if (choice.toLowerCase() == "n") { 
     System.exit(0); 
    } 
    else { 
     System.out.println("Invalid Input"); 
    } 
} 

しかし、私がしようとすると、私はエラーが発生しますスーパークラスのupdateBrand(input)メソッドが存在するとは思わないので、updateBrand(input)メソッドを呼び出します。どうすればこの問題を解決できますか?

+0

エラーメッセージを読んだことがありますか? – SLaks

+0

後:http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java – Savior

答えて

0

サブクラス内のメソッドをスーパークラスから呼び出すことはできません。

結局のところ、インスタンスが実際に異なるサブクラスの場合はどうなりますか?

これらのメソッドを同じクラスに移動する必要があります。

+0

フィードバックいただきありがとうございます。 –

関連する問題