Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 哪些OOD原则可以帮助优化内存使用?_Java_Oop_Memory_Model View Controller_Ooad - Fatal编程技术网

Java 哪些OOD原则可以帮助优化内存使用?

Java 哪些OOD原则可以帮助优化内存使用?,java,oop,memory,model-view-controller,ooad,Java,Oop,Memory,Model View Controller,Ooad,我正在尝试使用MVC模式设计(比如java)四连胜游戏 FourInARowModel类代表该模型,如下所示: public class FourInARowModel extends Observable{ //fileds private boolean turn = true; private int discsNum = 0; GameState gameState = null; private Player firstPlayer, secondPlayer; private B

我正在尝试使用MVC模式设计(比如java)四连胜游戏

FourInARowModel类代表该模型,如下所示:

public class FourInARowModel extends Observable{

//fileds
private boolean turn = true;
private int discsNum = 0;
GameState gameState = null;
private Player firstPlayer, secondPlayer; 
private Board board;
private Cell lastCellChanged;

//methods   

}
假设有一个实现(例如服务器游戏) s、 t FourInARowModel类可能有多个实例。哪种模式/技巧可以实现内存使用的最佳优化?(假设这个类很重,我想尽可能创建几个实例)

在这种情况下,我应该使用什么?缓存/池?让它成为不可变的类?还有别的吗


感谢您的帮助。

OOD并不是关于内存使用的。为了更好的设计,您通常会牺牲少量的性能。什么样的模式对你有好处主要取决于你如何使用这个类,这在你的问题中并不明显。a) 为什么你的模型应该有多个实例(一次有多个游戏吗?)b)哪个类负责创建/管理/销毁模型?根据该类中的使用情况,您可以想出一种方法来控制实例。a)是的。服务器可以同时与多个用户(不同的游戏)一起玩此游戏。b) 负责这一点的类当然是控制器类,而“命令”是从视图类发出的(参见MVC)。“过早优化是万恶之源”-