2016-10-05 18 views
-2

欠落しているメソッドを定義します。 licenseNumは(100000 * customID)+ licenseYearとして作成されます。 出力例:犬ライセンス:Java:基本クラス定義

public void createLicenseNum() { 
    licenseNum = (licenseNum * 100000) + licenseYear; 
    return; 
} 

しかし、それは正しくないです:77702014

これは私がやったことです。どこが間違っていますか?

CallDogLicense。 java:32: DogLicenseのcreateLicenseNum()は(int)に適用できません dog1.createLicenseNum(777);ファイルから

コードDogLicense.java

public class DogLicense { 
     private int licenseYear; 
     private int licenseNum; 

     public void setYear(int yearRegistered) { 
     licenseYear = yearRegistered; 
     return; 
     } 

     // FIXME: Write createLicenseNum() 

     /* Your solution goes here */ 

     public void createLicenseNum() { 
     licenseNum = (licenseNum * 100000) + licenseYear; 
     return; 
     } 

     public int getLicenseNum() { 
     return licenseNum; 
     } 
    } 

ファイルCallDogLicense.java

public class CallDogLicense { 
     public static void main (String [] args) { 
     DogLicense dog1 = new DogLicense(); 

     dog1.setYear(2014); 
     dog1.createLicenseNum(777); 
     System.out.println("Dog license: " + dog1.getLicenseNum()); 

     return; 
     } 
    } 
+3

引数を受け入れないメソッドを作成しました。あなたの 'main'メソッドは引数' 777'でそれを呼び出そうとしています。 – khelwood

答えて

0

あなたの方法引数はありません。javascriptではありません。今、あなたはcustomIdという名前のそのメソッドの変数内の値500を持っていますし、このdog.createLicenseNum(500);ようにそれを呼び出す場合

public void createLicenseNum(int customId) {...

:あなたはこれを実行する必要があります。

0

からコードをあなたの方法にcustomID引数を追加して、あなたの計算にそれを使用する必要があります。

public void createLicenseNum(int customID) { 
    licenseNum = (customID * 100000) + licenseYear; 
} 
0

intでメソッドを呼び出していますが、パラメータを取らないと宣言しています。

public void createLicenseNum(int licenseNum) { 
    this.licenseNum = (licenseNum * 100000) + licenseYear; 
return; 

この問題を解決します。

まだJavaではどうやってやっているのですか?オブジェクトを構築するには、コンストラクタを使用する必要があります。

public class DogLicense { 
    private int licenseYear; 
    private int licenseNum; 

    public void setYear(int yearRegistered) { 
     licenseYear = yearRegistered; 
     return; 
    } 


    public DogLicense(int num, int year) { 
     licenseNum = (num* 100000) + year; 
    } 

    public int getLicenseNum() { 
     return licenseNum; 
    } 
} 

public class CallDogLicense { 
    public static void main (String [] args) { 
     DogLicense dog1 = new DogLicense(777, 2014); 
     System.out.println("Dog license: " + dog1.getLicenseNum()); 
     return; 
    } 
} 
関連する問題