I'm attempting to load an image into a BufferedImage variable and store that in an ArrayList (ArrayList<BufferedImage> imgList).
public void loadImage(){
    try {
        String fileLoc = getClass().getResource("tile_unsearched.jpg").getPath();
        fileLoc = URLDecoder.decode(fileLoc,"UTF-8");
        File aFile = new File(fileLoc);
        img = ImageIO.read(aFile);
        imgList.add(img);
    } catch (IOException e) {
        System.out.println(e);
    } 
} 
However I keep getting this error:
Exception in thread "main" java.lang.NullPointerException
   at MainGameGUI.loadImage(MainGameGUI.java:96)
   at MainGameGUI.<init>(MainGameGUI.java:56)
   at MainDriver.main(MainDriver.java:22)
The path is correct because when I print it, it comes out as /C:/Users/HenBradley/workspace/HH2/bin/sector_a.jpg which is accurate. So I can't imagine my object would be null and given it were, I don't know why it would be, considering the path is correct.
Any clue as to where I'm going wrong?
Also here's the declaration of img and imgList:
private ArrayList<BufferedImage> imgList;
private BufferedImage img = null;
 
    