Java无法访问的代码错误

时间:2013-04-06 04:13:06

标签: java

我正在关注youtube上的一个教程,当我到达我应该使用“this.path”这样的部分时,我似乎遇到了错误。我似乎找不到任何解决方案。

以下是视频的链接:http://www.youtube.com/watch?v=o7pfq0W3e4I

package gfx;

import java.awt.image.BufferedImage;
import java.io.IOException;

import javax.imageio.ImageIO;

public class SpriteSheet {

public String path;
public int width;
public int height;

public int[] pixels;


public SpriteSheet(String path) {
    BufferedImage image = null;

        try {
image =     ImageIO.read(SpriteSheet.class.getResourceAsStream(path));
        } catch (IOException e) {
            e.printStackTrace();
        }


    if(image == null);{
        return;
    }


    this.path = path;
    this.width = image.getWidth();
    this.height = image.getHeight();    

    pixels = image.getRGB(0, 0, width, height, null, 0, width);

    for(int i = 0; i <= pixels.length;i++){
        pixels[i] = (pixels[i] & 0xff)/64;
    }


    for(int i = 0;i <= 8;i++) {
        System.out.println(pixels[i]);
    }


}       
}

1 个答案:

答案 0 :(得分:7)

您的错误在这里:

if(image == null);{
    return;
}

if语句后还有一个分号。这应该是:

if(image == null) {
    return;
}

分号结束if语句;换句话说,if(image == null),什么都不做,然后运行return;

Java不允许无法访问的代码。由于无论if条件如何都在运行return语句,因此无法达到该点之外的任何内容。