java - 声明变量类型的区别

标签 java opengl lwjgl slick2d

我已经有一个名为的变量

Image spriteImage;

稍后在代码中我会说明它是什么

Image spriteImage = new Image("content/man.png");

此代码使我的 Slick2D 应用程序崩溃。 有什么区别

Image spriteImage = new Image("content/man.png");

spriteImage = new Image("content/man.png");

(实际有效)

最佳答案

如果“崩溃”的意思是“无法编译”,那么原因是,每当您在范围内声明 Image spriteImage (或任何其他类型/名称组合)时,您都会重新定义一个新变量。如果您已经有类似的语句,那么它将无法编译,并表示您已将同一个变量重新声明了两次。

声明:

Image spriteImage = new Image("content/man.png");

声明一个名为spriteImage变量,而语句:

spriteImage = new Image("content/man.png");

正在将已存在的变量spriteImage的值设置为new Image(...)

关于java - 声明变量类型的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19234570/

相关文章:

java - 为什么 priorityQueue 在编译时不需要可比较的接口(interface)?

C++,(过剩) - 在显示循环中维护 bool 值的全局 vector - 导致程序崩溃

java - OpenGL新手问题

c++ - GLSL 的第二个网格具有奇怪的黑色面

c++ - Eclipse CDT 编辑器无法识别 OpenGL 扩展

java - 我在使用 open gl 和 glfw (LWJGL) 将模型渲染到窗口时遇到问题

java - eclipse : Packaging a JAR with natives

java - 重写java中的equals方法但出现逻辑错误/意外结果

java - 日期选择器仅用红色标记某些日期

java - 为什么 Tomcat 中实际上需要 WAR 文件?