I'm novice @Java Programming. I have been working for SaveFile, for my game. Load and Save data. I got 2 following errors:
java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at Clicker.LoadFile.<init>(LoadFile.java:17)
at Clicker.mainClass.main(mainClass.java:21)
java.lang.NullPointerException
    at Clicker.SaveFile.<init>(SaveFile.java:17)
    at Clicker.mainClass$1.run(mainClass.java:26)
    at java.lang.Thread.run(Unknown Source)
I have got MainClass, where i put in SaveClass and LoadClass :
package Clicker;
import javax.swing.JFrame;
public class mainClass {
 public static void main(String[] args) {
     ClickerGame game = new ClickerGame();
        JFrame frame = new JFrame("CarCollectionarV1");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        game.addComponentToPane(frame.getContentPane());
        frame.pack();
        frame.setVisible(true);
        frame.setResizable(true);
        frame.setSize(1000, 700);
        LoadFile load = new LoadFile();
 Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
        public void run() {
        SaveFile save = new SaveFile();
        }
    }));
 }
Full "SaveClass" code:
  package Clicker;
import java.io.*;
public class SaveFile{
    ClickerGame CG = new ClickerGame();{
try{
    File SaveFile = new File("SaveFile.sav");
    if(!SaveFile.exists()) {
        SaveFile.createNewFile();
    } 
    FileOutputStream saveFileSub = new FileOutputStream(SaveFile);
    ObjectOutputStream save = new ObjectOutputStream(saveFileSub);
    save.writeObject(CG.CarMain.Money);
    save.writeObject(CG.CarMain.MoneyClicks);
    save.writeObject(CG.CarMain.Boxes);
    save.writeObject(CG.CarMain.BoxesClicks);
    save.writeObject(CG.CarMain.PlayerLevel);
    save.writeObject(CG.CarMain.BoxLevel);
save.close();
    }
    catch(Exception exc){
    exc.printStackTrace();
    }
    }
}
And Full "LoadClass" code:
package Clicker;
import java.io.*;
public class LoadFile {
    ClickerGame CG =new ClickerGame();{
        try{
            File SaveFile = new File("SaveFile.sav");
            if(!SaveFile.exists()) {
                SaveFile.createNewFile();
            } 
            FileInputStream SaveFileSub = new FileInputStream(SaveFile);
            ObjectInputStream load = new ObjectInputStream(SaveFileSub);
            CG.CarMain.Money = (int) load.readObject();
            CG.CarMain.MoneyClicks = (int) load.readObject();
            CG.CarMain.Boxes = (int) load.readObject();
            CG.CarMain.BoxesClicks = (int) load.readObject();
            CG.CarMain.PlayerLevel = (int) load.readObject();
            CG.CarMain.BoxLevel = (int) load.readObject();
            load.close();
            }
            catch(Exception exc){
            exc.printStackTrace();
            }
            }
 
    