There are different parts in a game, and these parts occur in many games, but not in all. A sixteen puzzle game has no physics or logic. A text adventure has no graphics.
Programming languages are mostly general purpose, and you use 1 language for the entire game.
There are not many games that use one language nowadays. Most games use a scripting language for various aspects like dialogues or loading/saving and storing other data like a AndroidManifest.xml.
1. But don't let that scare you. If you know how to write in Java you know how to write in C# and from there it's a small step to a lower level language like C++ or higher up like Python. If you just want to create games you pickup a framework or engine where things like GPU communications are already done for you. You can start coding your game right away and these frameworks offer a arsenal of handy snippets for you to make your life easier. Just pick a language like Java or C#, learn the basics and get comfortable with the language, then pick a fitting framework for the language you chosen.
2. A map or level is created often by hand but can also be generated automaticaly. The tree's of Oblivion where planted by a alghorithm and then cleaned up a bit. Games like diablo generate there dungeons while the game is running. And others handcraft there maps. For 2D maps you can use a application like tiled where you can paint your tiles on a canvas and render that in your game. For 3D a engine is used, some companies roll there own but there are plenty of existing engines where you can start placing objects and "painting" your world.
3. Slow down and take it step by step. There are plenty of physics libraries that can do a better job then the car physics of GTA V but that requires advanced knowledge of physics and cars from the developer. Anyway, figure out what you want to do, if you really want to code then pick a language and start learning the basics. Once you feel comfortable with it you should know about some libraries or frameworks that will help you create a game or perhaps you want to give Unity or UE4 a go. Every major engine offers physics for you to use however you want. Likewise most frameworks like SFML and LibgDX come with a physics engine as well, otherwise you can pick one that is compatible with the language your working with and import it. But like I said, slow down! I bet you won't completely finish a game in the following 2 years, not even a simple game like break out. Let alone something that vaguely resembles GTA.