JavaのメリットはOSやデバイスを選ばず、JVMと呼ばれるJava仮想マシンさえあればどこでも動作することです。また、安定性が高く実行速度も速いので、システム業界でもとりわけ需要の多い言語となっています。
企業の利用している業務システムでもJavaが使用されているので、経験者であるだけで仕事のオファーが舞い込むことも珍しくありません。人気のある言語なだけに不具合が発生した場合でもすぐに対処されたり、セキュリティ対策も万全なので、常に安全な状態で使用できます。また、組織内におけるシステム以外にも、JavaはWEBアプリやゲームの開発も行えます。メジャーなソーシャルメディアやWEB上で遊べるゲームなども、Javaを用いて開発されているケースが多いのです。
これだけ需要の高いJavaですが、一方でデメリットも少なからず存在します。1つは初心者への敷居が高いことです。標準ライブラリが多くて様々な要件が実現しやすい反面、初心者がこのライブラリの仕様を理解するのは一筋縄ではいきません。オブジェクト指向にも慣れる必要性があります。オブジェクト指向言語は理論だけを頭に詰め込んでも簡単に実践できるものではないので、習得には多くの時間と経験を要することになります。Javaは大規模なシステムには適していますが、小さなプログラムなどでは時間が掛かって逆に効率が悪いので、スクリプト言語を実装する方が実用性が高いこともあります。このようにJavaは需要が高いものの向いていない環境も存在するので、使用する際は慎重な判断が求められます。