构成(Has-a关联)我不太明白。

问题描述 投票:-4回答:1

我正在学习如何在java OOP中使用构图,并开始编写客户和银行账户之间的简单关联。我在下面留下了我无法摆脱的图片。我的问题是:如果我定义了一个方法,将在构造函数中设置的值,我怎么能调用这些方法的地方在构造函数。现在已经谢谢你了

public class bankaHesabı {
private String müşteriNo;
private String IBAN;

public bankaHesabı(String müşteriNo, String IBAN) {
    this.müşteriNo = müşteriNo;
    this.IBAN = IBAN;
}

public String getMüşteriNo() {
    return müşteriNo;
}

public String getIBAN() {
    return IBAN;
}

public void setMüşteriNo()
{
    for(int i = 0;i<6;i++)
    {
          int a = (int)(1+Math.random()*9); 
          this.müşteriNo += Integer.toString(a);
    }

 }
public void setIBAN(String uyruk)
{
    IBAN += uyruk +" "+ this.müşteriNo; 
}

}public class Kompozisyon {

public static void main(String[] args) {
   bankaHesabı bankahesabı = new bankaHesabı(müşteriNo, IBAN);
  müşteri m1 = new müşteri(bankahesabı,"mithat","TR");



}

}

这里比代码更清晰

java oop inheritance associations composition
1个回答
0
投票

构造函数只用于初始化一个对象的新实例。你可以有多个构造函数,有不同数量和类型的参数。没有要求构造函数必须对传递的参数或构造函数中的逻辑做什么,但通常它是用来给私有变量赋值的。说到这里,你应该回顾一下构造函数的规则。

《Java中构造函数的规则》

  • 构造函数不能有返回类型。
  • 构造函数必须与类的名称相同。
  • 构造函数不能被标记为静态。
  • 构造函数不能被标记为抽象的。
  • 构造函数不能被重写。
  • 构造函数不能是final。

如果你没有一个能更新所有需要的变量的构造函数,那么你将不得不求助于调用setter方法来设置状态(假设它们是可用的)。

最后,在通过构造函数创建对象后,当状态发生变化,你需要更新对象实例上的变量时,你将经常需要调用setter方法。

© www.soinside.com 2019 - 2024. All rights reserved.