The good thing about Java is that you can break apart large files like the one you are writing into multiple files easily via copy/paste. Java was designed to be an object-oriented language, so there is little benefit from putting all of your code and multiple classes into one file. You may want to implement a Model View Controller setup where the Model controls the logic and the View/Controller controls the GUI. A two layered MVC M-VC is usually used in Java since the Java GUI already has mappings for control and listeners for actions.
Model?view?controller - Wikipedia, the free encyclopedia