制作一个用于存储我的项目编号的类

时间:2019-07-10 08:36:21

标签: java

我有一个类似于Java swing的鸡肉入侵者的游戏项目。我想为我的项目保存一些数字或尺寸,以便在整个项目中使用它们。例如,我构建的spaceShip的宽度等于主框架的五分之一。但我不想每次都打电话给mainFrame.getWidth()并除以5;所以我要建立一个类来存储这些数字,例如spaceShip的大小和起始位置等等。问题是,创建单例类并在每次我想要一个数字时获取一个实例,还是用我想要的数字的静态字段构建一个类,是否更好?我为他们两个提供了代码。

第一种方式:

public class Dimensions {
    private static GameObjects gameObjects = GameObjects.create();//a singleton class i keep my obj
    final public static int spaceShipHeight =   gameObjects.getMainFrame().getHeight()/8
            , spaceShipWidth = gameObjects.getMainFrame().getWidth()/15 ;

    private Dimensions() {
    }
}

第二种方式:

public class Dimensions {
    Dimensios dimensions;
    int spaceShipHeight , spaceShipWidth ;

    private Dimensions() {
        int spaceShipHeight = gameObjects.getMainFrame().getHeight()/8;
                int spaceShipWidth = gameObjects.getMainFrame().getHeight()/15;
    }
    public Dimensions create() {
        if(dimensions==null) {
            dimensions = new Dimensions();
        }
        return dimension;
    }

        // and here goes the code for getters 
        public int getSpaceShipHeight(){
           return spaceShipHeight;
        }
}

并用于: 第一种方式:int a = Dimensions.spaceShipHeight; 第二种方式:int a = Dimensions.getSpaceShipHeight();

编辑: 建立班级保存图片时,我有同样的问题。 答案是否有所不同?

0 个答案:

没有答案