class A {
private List<B> list = new ArrayList<B>();
private B example;
public A(List<B> list) {
this.list = list;
this.example = setExample();
}
private B setExample() {
B object;
//do something with the list
return object;
}
}
这样的事情会成为可能吗?该对象有一个列表,但我希望该列表的特定元素也存储在对象中。
答案 0 :(得分:1)
是的,只要方法不可覆盖就没问题。不能在构造函数中调用可覆盖的方法。
因此,如果此类被设计为继承,则setExample()方法应该是最终的,如果它是公共的或受保护的,但它是私有的,因此这不是问题。
答案 1 :(得分:0)
是的,这样可以正常工作,但是您不需要使用空列表初始化变量list
,因为您在构造函数中将传递的列表分配给它,从而有效地再次抛出新列表。