[英]Java reflection in two level of objects
假設我有兩個班。
public class User {
private String userName;
private String age;
private Address address;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
}
public class Address {
private String city;
private String country;
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
}
我想使用Java反射設置用戶的城市和國家。 參數圖看起來像
address.city=COLOMBO
address.country=SRI LANKA.
使用java反射訪問用戶對象內部地址屬性的最佳方法是什么。
由於我要通過CSV創建對象。 因此,當用戶使用點(。)發送屬性時,它意味着其對象位於另一個對象內。
我想編寫全局反射方法以在整個應用程序中使用。 一種使用CSV創建對象的方法
最好的方法是創建一個新的Address
對象,然后調用該對象的設置器,最后為用戶調用setAddress
。
最佳使用模式不會改變,因為您正在使用反射。 我建議您做同樣的事情,但要使用反射。
我認為為此使用反射不是最佳方法。 無論如何,正如Peter在第一個答案中告訴您的那樣,您應該創建一個新對象並使用setter對其進行分配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.