我有一个名为StockArrayList
的类,它基本上包含添加,删除和更新方法,我从一个文本文件加载一个数组列表,数组列表加载到数组中但是在加载数组列表时它会破坏我的所有除了add之外的方法,如果它没有被加载到数组列表中,我的所有方法都按预期工作,如何在不破坏我的方法的情况下加载StockArrayList
?
public class StockListCLI {
Scanner in = new Scanner(System.in);
StockArrayList Stock = new StockArrayList();;
/**
* takes a existing stockListand uses it though out the class
* @param stock
*/
public StockListCLI(StockArrayList stock){
//Stock = (StockArrayList) stock; //uncomment to load stock data but it will break most of the functions below
}
答案 0 :(得分:0)
您正在分配对Stock的引用,以后可能会由GC收集。您应该实现复制构造函数,覆盖并使用clone
(必须实现Cloneable
接口)方法,或者将stock
的成员变量1复制到Stock