我的指导是:第三个构造函数应该有一个Account对象的形参。此构造函数创建一个除帐号以外的重复帐号。
public class Account
{
private String first;
private String last;
private int acctNum;
private double balance;
public Account()
{
first = "";
last = "";
acctNum = (int)Math.random()* 1000;
}
public Account(String f, String l, double b)
{
first = f;
last = l;
balance = b;
}
public Account()
{
}
}发布于 2021-01-14 00:31:01
public class Account
{
private String first;
private String last;
private int acctNum;
private double balance;
public Account()
{
first = "";
last = "";
acctNum = (int)Math.random()* 1000;
}
public Account(String f, String l, double b)
{
first = f;
last = l;
balance = b;
}
public Account(Account acc)
{
this.first = acc.first;
this.last = acc.last;
this.balance = acc.balance;
// Account num deliberately omitted
}
}发布于 2021-01-14 00:43:08
正确的方式:
public class Account {
private String firstName;
private String lastName;
private int accountNumber;
private double balance;
public Account()
{
Random random = new Random();
this.accountNumber = random.nextInt(1000);
}
public Account(String firstName, String lastName, double balance)
{
Random random = new Random();
this.accountNumber = random.nextInt(1000);
this.firstName = firstName;
this.lastName = lastName;
this.balance = balance;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public int getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(int accountNumber) {
this.accountNumber = accountNumber;
}
public double getBalance() {
return balance;
}
public void setBalance(double balance) {
this.balance = balance;
}
@Override
public String toString() {
return "Account{" +
"firstName='" + firstName + '\'' +
", lastName='" + lastName + '\'' +
", accountNumber=" + accountNumber +
", balance=" + balance +
'}';
}
}运行示例:
public class Main {
public static void main(String [] args){
//fist Option
Account firstAccount = new Account();
firstAccount.setBalance(100);
firstAccount.setFirstName("jhon");
firstAccount.setLastName("ker");
System.out.println(firstAccount.toString());
//second Option
Account secondAccount = new Account("alex","alex",1000);
System.out.println(secondAccount.toString());
}
}https://stackoverflow.com/questions/65705899
复制相似问题