首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为class对象创建形参?

如何为class对象创建形参?
EN

Stack Overflow用户
提问于 2021-01-14 00:23:40
回答 2查看 78关注 0票数 0

我的指导是:第三个构造函数应该有一个Account对象的形参。此构造函数创建一个除帐号以外的重复帐号。

代码语言:javascript
复制
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()
  {
    
  }
}
EN

回答 2

Stack Overflow用户

发布于 2021-01-14 00:31:01

代码语言:javascript
复制
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
  }
}
票数 0
EN

Stack Overflow用户

发布于 2021-01-14 00:43:08

正确的方式:

代码语言:javascript
复制
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 +
      '}';
  }
}

运行示例:

代码语言:javascript
复制
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());


  }
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65705899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档