我有一个项目,我想在整个项目中创建一个类的最小实例(用Java)。序列化和反序列化对象并将其存储在文件中是一个好主意吗?我将在整个项目中大量使用这个类,所以我不确定这是不是一个好的解决方案。有没有其他方法可以做到这一点?
附注:我把这个类作为一个单独的类
发布于 2018-07-31 06:22:21
不,这不是一个好主意,它应该是不言而喻的。如果你想详细了解为什么不应该使用你建议的方法,那么可以看看@Joachim Sauer的答案here。
在不知道您打算如何处理要重用的类的情况下,听起来您需要静态实例之类的东西。
因此,与其混淆单例设计模式是什么,只需在(最好)主类中创建一个实例,如下所示:
public static ClassIWantToStore reusable = new ClassIWantToStore();
或者,如果你每次都想要一个不同的类实例:
//THIS IS NOT SINGLETON
public static ClassIWantToStore getNewInstance(){
//Modify functionality if you want something more
//before returning the class instance.
return new ClassIWantToStore();
}
我建议您阅读静态关键字在Java中的作用,它可能对您现在所处的情况很有用;但也应该小心使用它,因为它可以帮助您在被误用时击中自己的腿。是对静态关键字的一个很好且简单的解释。
https://stackoverflow.com/questions/51602846
复制相似问题