Так вот часть моего кода тот бросает NullPointerException:Получение NullPointerException при создании GImage
public class PuzzleGame extends GraphicsProgram implements KeyListener{
private ArrayList <PuzzleImage> list = new ArrayList <PuzzleImage>();
private PuzzleImage _11=null;
public static void main(String[] args) {
PuzzleGame game= new PuzzleGame();
game.setup(); //NullPointerException here
game.addKeyListener(game);
}
private void setup(){
BufferedImage img11 = null;
try {
img11 = ImageIO.read(new File("C://part11.png"));
} catch (IOException e) {
}
PuzzleImage _11=new PuzzleImage(img11,2,2,2,2); //NullPointerException here
list.add(_11);
}
}
А вот класс PuzzleImage
public class PuzzleImage extends GImage {
public PuzzleImage(Image img, double x1, double y1, double realX, double realY) {
super(img, x1, y1); //NullPointerException here
x=x1;
y=y1;
}
private double x;
private double y;
private double realX;
private double realY;
}
Так что я сделал, что есть файл с именем part11.png на C, поэтому я предполагаю, что путь должен быть правильным. Теперь я честно понятия не имею, что не так с этим кодом, однако я очень новичок в java, поэтому, скорее всего, есть что-то, чего я не знаю или не видел. Может быть, некоторые из вас, ребята, могли бы посмотреть и посмотреть, сможете ли вы что-нибудь найти? Благодарю.
SOLVED: Оказывается, что из 12 изображений я добавляю, что этот был только .jpg, а не .png. Наверное, уже поздно, мне жаль беспокоить вас, ребята.
Да, это то, о чем я тоже думаю, я имею в виду, что это не может быть правдой? Также я добавляю путь правильно? Я просто не был уверен в этих вещах. EDIT: да, я подтвердил, что это действительно проблема, она бросает исключение, но может ли выяснить причину? –
Нет, я не думаю, что это что-то еще. это также помогло бы, если бы вы могли опубликовать спецификацию API для 'ImageIO.read (File)'. что может помочь подтвердить вещи. – vijay
@AndrewThompson +1 за предложение. Я обновил свое решение, чтобы отразить то же самое. – vijay