【发布时间】:2023-04-04 10:39:01
【问题描述】:
我在java中遇到了一个有线问题,下面的代码显示错误:
public class GameStart extends GameFrame {
Image plane1=null;
plane1=ImageIO.read(new File("C:\\Users\\jack\\IdeaProjects\\Selftest\\Game\\src\\plane.png"));
................
虽然下面这样的代码是正常的,但我不知道为什么,因为它们的含义相同,唯一的区别是声明顺序本身,我的代码有什么问题吗?
public class GameStart extends GameFrame {
Image plane1 = ImageIO.read(new File("C:\\Users\\jack\\IdeaProjects\\Selftest\\Game\\src\\plane.png"));
...................
【问题讨论】:
-
我是java新手,如果你能帮助我,谢谢!
-
我不明白你的问题。你在说哪个错误?一般来说,如果可能,您不应使用
null。如果可以,在声明变量时正确初始化变量。 -
当你不直接初始化你的字段(一行)时,你必须在构造函数、方法或“{...}”块中进行......在一个不可能的课程中。见docs.oracle.com/javase/tutorial/java/javaOO/initial.html
-
@cbley 红色下划线警告是我关心的错误,idle 说“plane1”是未知类,但我事先在“Image”类中声明了它
-
你遇到了什么错误?图像是一个抽象类,不能直接初始化……但是空赋值应该可以正常工作。