Ich arbeite an der Erstellung eines ATM-Maschine als Java-Projekt für einen meiner - Java-Anfänger Kurse und ich bin verwirrt darüber, wie ein Objekt einer Klasse als Parameter einer anderen Klasse. Ich weiß, wie man Vererbung verwendet, aber in diesem Fall sind Benutzer und BankAccount auf dem gleichen Niveau und das verwirrt mich in diesem Fall auch.Verwendung von Objekt einer Klasse als Parameter der anderen Klasse
Dies ist mein Code so weit:
Bankaccount-Klasse
package atm;
public class BankAccount {
public double balance;
private int accountNumber = 333220;
public String user;
public BankAccount(){
balance = 0;
}
public BankAccount(double balance, int accountNumber, User user){
this.balance = balance;
this.accountNumber = accountNumber;
this.user = user; // HERE, THE CONSOLE TELLS ME I CAN'T CONVERT USER TO STRING. USER HAS ONLY STRINGS AS PARAMETERS. DO I NEED TO CAST? HOW WOULD I DO IT?
}
public void accountNumber(){
accountNumber++;
}
public int getAccountNumber(){
return accountNumber;
}
public void deposit (double amount){
balance += amount;
}
public void withDraw(double amount) {
balance -= amount;
}
public double getBalance(){
return balance;
}
public void transfer(BankAccount other,double amount){
withDraw(amount);
other.deposit(amount);
}
}
Benutzerklasse:
package atm;
public class User {
public String name;
public String lastName;
private int dOB;
public User (String aName, String aLast){
name = aName;
lastName = aLast;
}
public String getName(){
return name;
}
public String getLastName(){
return lastName;
}
public int getDOB(){
return dOB;
}
public String getUniqueKey(int dOB){
String uniqueKey = name.substring(0,1) + name.substring(name.length() -1) + dOB + lastName.substring(0,1) + lastName.substring(lastName.length()-1);
return uniqueKey.toLowerCase();
}
}
Fehler hier: öffentliche Zeichenfolge Benutzer. Ändern Sie es durch den öffentlichen Benutzer Benutzer –
Sie deklarieren das Feld 'user' als Typ' String' ('public String user'), aber es sollte als' User user' deklariert werden. –