Definieren Sie die fehlende Methode. licenseNum wird erstellt als: (100000 * customID) + licenseYear. Beispielausgabe: Hundesteuer: 77702014Java: Einfache Klassendefinition
Das ist, was ich tat:
public void createLicenseNum() {
licenseNum = (licenseNum * 100000) + licenseYear;
return;
}
Aber es ist falsch. Wo gehe ich falsch?
CallDogLicense. java: 32: createLicenseNum() in DogLicense kann nicht auf (int) angewendet werden dog1.createLicenseNum (777);
-Code aus der Datei 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;
}
}
-Code aus der Datei 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;
}
}
Sie haben eine Methode geschrieben, die keine Argumente akzeptiert. Ihre 'main'-Methode versucht, sie mit dem Argument' 777' aufzurufen. – khelwood