"The right way:" There are many "ways." Some are better than others. Some ways are technically "wrong" but will work anyway, most of the time. Other ways are just plain wrong because they don't work, ever. As a beginner in GUIs, don't worry so much about always doing everything the right way or even knowing the right way from the wrong way that still works. Learn them all, practice them all, and as you gain that experience and study the differences, you'll learn why the right way is right, the better way is better, the wrong way that works is still wrong, and how to avoid the wrong way that just plain doesn't work. The more you know the better. Cleaning out what you know and starting over is not only silly, it's impossible. We learn more from our mistakes than our faultless efforts.
No, you won't find a tutorial, web page, or video that shows you every way to do something and then tells you which is best, right, wrong, etc. You'll have to try all of those ways and figure it out, and if you work at it long and hard enough, you will.
Java Docs: You need to spend more time with them to become more familiar with them and confident in their understanding and usage. Ask questions if you need help, but you need to put forth the effort to thoughtfully study them until you mostly understand them. They are not that hard. Telling yourself they are "hard" to avoid them is an immature technique that will prevent you from being a better programmer. Finding others who agree that something is difficult is easy. Get over it and move past those people.
The parts of the Main class you say you don't understand indicate that your OOP skills are weak. GUI programming requires a strong understanding of OOP principles and practices. There's no magic to acquiring this understanding other than study and practice, lots of it. Slow down and back up a bit. Improve your understanding of OOP basics. That you don't understand or even recognize mutator/accessor (getter/setter) methods suggests your study has not been structured, that you've bounced around, studying various topics without getting a firm foundation, and have jumped too quickly to more advanced topics like GUI programming.
Working through the tutorial at the link I provided should answer your questions in the last paragraph, but you'll need to practice that code over and over again to understand it well.
Good luck, keep studying, keep coding, and practice, practice, practice.