I have no formal education with programming, so my recommendations here are just from my personal experience. I also need to say the following:
To create a 3D game, you also need to know DirectX (Windows), OpenGL (cross-platform), or use a game engine.
IMPORTANT: If you don't have the drive to get through these tutorials, programming isn't right for you.
My first experience with programming of any kind was in LittleBigPlanet. It introduced me to basic logic and some flow control, which you need to understand before jumping into any kind of programming. If you can draw a flow chart, you're good to go.
I learned Java online with thenewboston and his beginner Java tutorials. He has intermediate tutorials as well, and a tutorial series on creating a 2D Java game with Slick.
At this point, I used Java's default graphics to create my first game. It is important to make a few small games before trying to make a big one. stackoverflow is a great website to use for any questions you have about Java or programming in general. Notch started off small as well.
Then I wanted to create a 3D game. The first thing I tried was to use jMonkeyEngine, but I stopped after a bit because I liked to be able to control exactly how my game worked.
Then, I discovered LWJGL. I was interested, but I wasn't the kind of person to try and use a library by looking through the documentation. I eventually found ThinMatrix and his tutorials on making a 3D Java game from scratch. Because of his tutorials, I now fully understand how to create a 3D game without using an engine of any kind. Coincidentally, Minecraft also uses LWJGL.