我正在尝试为我的乒乓球游戏制作顶部和底部的墙壁。我认为一切都正确,但它无法运行,因为显示“本地变量wall可能未初始化”。如何初始化图像?
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class Wall extends Block
{
/**
* Constructs a Wall with position and dimensions
* @param x the x position
* @param y the y position
* @param wdt the width
* @param hgt the height
*/
public Wall(int x, int y, int wdt, int hgt)
{super(x, y, wdt, hgt);}
/**
* Draws the wall
* @param window the graphics object
*/
public void draw(Graphics window)
{
Image wall;
try
{wall = ImageIO.read(new File("C:/eclipse/projects/Pong/wall.png"));}
catch (IOException e)
{e.printStackTrace();}
window.drawImage(wall, getX(), getY(), getWidth(), getHeight(), null);
}
}
感谢所有回答我的人,我明白了。我没有意识到我只需要将wall = null设置为空即可。