0

我在这里需要一点帮助。我有三个班Book,,,MemberBean

图书.java

public class Book
{
  public Member m=null;
  // various getter & setter methods
}

成员.java

public class Member
{
  public Book b=null;
  // various getter & setter methods
}

Bean.java我创建一个Book类的对象时,通过这个对象我们必须访问 Book 的所有方法以及 Member 类。现在的问题是 Book 中创建的 Member 类的对象没有初始化&我们不能使用 new 运算符来初始化它&我们不能让它静态。如果我们使用 new 运算符,则结果不会出现。

4

1 回答 1

0

这种设计是不正确的。

存在循环依赖。

Book有一个Member并且Member有一个Book

你需要仔细检查这个设计。

一旦解决了依赖关系,构造函数注入将是解决此问题的最简单方法。

更新:更正了我认为正确的设计。

//Book  
public class Book {
   private String bookName;
   private String authorName;
   //getters and setters
}

//Member will have a book (maybe multiple) associated with them  
public class Member {
     private Book[] bookArray;
     public Member (Book... books) {
         this.bookArray = books;
     }
}
于 2013-04-15T05:27:56.957 回答