[英]how to insert more than one values in one object by calling setter method in HAS-A relationship in java
class Address {
private int pincode;
private String village;
//setters to store multiple values
}
class Student{
private int sid;
private String
// setter methods for inserting values into student object
Address a=new Address();//HAS-A relationship
a.setPincode(1111);
a.setVillage("xxxxxx");// temporary address
a.setPincode(2547);
a.setVillage("yyyyy"); permanent address
// so here i want to inject more than one address parameters to Student object
// like i want to print temporary adress and permament address for one student object
System.out.println(studentobject);
// toString method overriden
}
例如,如果我打印studentobject
,我想為一個學生對象輸出臨時地址和永久地址。
按照您的設計方式,一個Address
類型的對象可以恰好包含一個密碼和一個村庄名稱。 創建對象后,存儲兩個值(1111 和“xxxxxx”),然后在之后的兩行中覆蓋它們。 以前的數據不再可用。
設計它的最佳方法可能是將兩個類字段放入您的Student
類中。 然后您可以設置兩個地址(在一個 setter 中或有兩個單獨的 setter)。 在toString()
您打印兩個地址。
class Student{
private int sid;
private String name;
private Address tempAddress;
private Address permAddress;
public void setAddress(Address tempAddress, Address permAddress) {
this.tempAddress = tempAddress;
this.permAddress = permAddress;
}
//Other methods here...
public String toString() {
//Concatenate your addresses somehow, you might need to implement toString for Address
String addresses = tempAddress + "\n" + permAddress;
return addresses;
}
}
class Address {
private int tempAddressPincode;
private String tempAddressVillage;
//storing tempAddress with above two variables
private int permAddressPincode;
private String permAddressVillage;
//storing permAddress with above two variables
}
這可以是滿足您要求的一種解決方案。
另一種解決方案,你可以去使用一個數組
Address[] addresses = new Address[2].
addresses[0] for tempAddress and addresses[1] for permanent address.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.