Okay, because of all that I recommend that you choose a game engine:
http://en.wikipedia....of_game_engines
"Do it myself" game development means that you want to be an indie game developer - correct? Making programs which are games is somewhat different than what you learned in Uni. Your classes helped, so now you use your base to focus on programming with games in mind. This means object oriented, class files, and compiled core for performance.
Java is slower natively than others like C, so you will need to look at pre-compiling ( just in time compilation ), class file structures for performance, and runtime optimizations. The 2D games are ideal for these things.
If you make implementations using MonoDevelop, then you will streamline framework runtime issues through Windows systems. This will open things such as user interface and audio system design to you more easily because the community has these in place and great support for it. Crossplatform is available, too, with MonoDevelop. The MD gaming communities can help you with their suggestions and information.
As for art assets, being that college is your home away from home (
Short term before you make art, you should make several simple games with existing art assets for practice. It's game making time, now!
Middle term you need to create your personal game development environment, making contacts, using existing technology and art, and establishing fundamental game structure.
Long term you will need to be the leader of your game development work environment, of course, and likely need other people in your team. Indy does not mean alone! Indy means independent!
Do some research, start making games very soon, and have fun with it! Things will get clearer very soon if you do!
Clinton