Javaと聞いて、どういうものを作れるプログラミング言語かイメージしてみてください。プログラミングの知識を持っていなければ難しいかもしれませんが、実はプロのエンジニアの間でも、思い浮かべるイメージに差があります。Javaとはそれだけ、様々なことができる言語なのです。
特徴はどんなプラットフォームでも同じように動くこと。たとえばWindowsやLinux、昔のガラケーなどもJavaが使われています。Webサービスからシステム開発、組み込みまで様々な用途でJavaが使用されるのはこの特徴のためです。
Javaはオブジェクト指向の言語であり、大規模な開発に適しています。AIや機械学習の流行でPythonに抜かれましたが、高い信頼性のある言語として現在でも世界2位の人気を誇っています。
Javaを実際に使用したサービスではTwitterやEver noteが有名です。楽天のサーバーサイドプログラムもJavaです。
またWebサービスだけでなく、Officeの代わりに使用できるOpenOfficeも、Javaで作られています。ゲームもJavaで制作が可能であり、組み込みはJava本来の用途です。ブルーレイプレイヤーはJavaの組み込みの代表例でしょう。さらにAndroidのアプリ、銀行のシステムなどもあり、その用途は多岐にわたります。
Javaと聞いてプロのエンジニアさえ、いくつものイメージを思い浮かべるのはJavaの汎用性の高さゆえです。
しかし逆説的ですがJavaを学ぶときは、作りたいものを決めておく必要があります。汎用性の高さゆえに、将来のビジョンが思い浮かべにくいからです。
Webサービスやスマホアプリを作ることを目標にするなど、具体的なビジョンを描いておきましょう。きっと学習のモチベーションも高く保てるはずです。