我编写了代码,使用 GraphicsProgram 中屏幕的宽度和高度来绘制框,我在其中做其他事情。这些框将是屏幕垂直尺寸(高度)的 1/6。
我现在拥有它的方式是在我的运行方法中创建一个像这样的变量:
int boxHeight = getHeight() / 6;
然后我转向这样的其他方法:
placeBox(boxHeight);
在我的 placeBox 方法中,我得到了这样的变量:
private void placeBox(int boxHeight) { ..code.. }
这一切都有效,但我想知道是否可以使用常量,我会在我的 run 方法之前声明它,如下所示:
private static final int constantBoxHeight = getHeight() / 6;
但是,这给了我以下编译器错误:
non-static method getHeight() cannot be referenced from a static context
所以我的问题是:我是否以正确的方式实现常量?如果没有,我该如何正确实施?另外,如果我想要做的事情甚至是可能的,那么使用常量而不是将我的变量从我的 run 方法移动到其中的方法然后将其移动到其中的其他方法有什么好处?
getHeight() 是从 acm.graphics 导入的。*