首先声明,个人语文水平一般,知识有限,可能有误,忘批评指导;
今天做项目时,突然有一个接口里对象里面要用到List并且这个List里面存放的是这个javaBean本身.具体见Demo代码:
public class User {
private int id;
private String userName;
private String Nickname;
private List<User> users;
public int getId() {
return id;
}
public String getNickname() {
return Nickname;
}
public String getUserName() {
return userName;
}
public List<User> getUsers() {
return users;
}
public void setId(int id) {
this.id = id;
}
public void setNickname(String nickname) {
Nickname = nickname;
}
public void setUserName(String userName) {
this.userName = userName;
}
public void setUsers(List<User> users) {
this.users = users;
}
}
第一次,这样搞过,也不知道有这样写bean对象应该会不会有什么隐患.忘大牛指点一二.
下面是个人的愚见:
List<User> list = new ArrayList<User>();
User u = new User();
list.add(u);
u.setId(1);
u.setNickname("昵称");
u.setUserName("姓名");
u.setUsers(list);
System.out.println("长度:" + u.getUsers().size());
这个是写的测试的代码,运行没有问题;
首先,new了一个user对象u,u里面的users的值list添加了其本身u.
这时u.users又指向了u.
说白了,就是这个users和user他们只是相互的指向关系,打个比方:就是A的一个属性指向了B,B又指向了A.
这样写,会不会出现一些问题或者隐患,bean对象可以这样搞吗,或者还是我想多了...
最后感慨,语言是如此的博大精深啊,赶紧回去补基础去...