Если вы хотите создать маленькую игру или пример, я думаю, что JFrame в порядке. И как это следует, вам нужно 2 важные части:
Вы можете посмотрите пример: Игра l oop и рендер в игре
Для быстрого просмотра: Проблеск Jframe
Но если вы хотите сделать игру для реальной жизни, вам нужен фреймворк или движок для этого.
С Java вы можете проверить Libgdx
С C ++, Javascript, Lua Вы можете проверить Cocos2d-x
С C#, вы можете проверить Unity
С Javascript только, вы можете проверить Phaser js
и так далее ...