Java'yı karşılaştırırken, karşılaştırmayı C# ile değil, .NET ile yapmalısınız.
Çünkü C# programlama dili iken JAVA ve .NET platformlardır. Platform başka şey, programlama dili ise başka başka şeylerdir.

Ayrıca .NET platformunun C#, F#, VB, ASP gibi onlarca programlama dilleri vardır.
Yine aynı şekilde, Java ve .NET platform programlama dilleri ile Python'u karşılaştıranlar göreceksiniz, benzerdir ama aynı şeyler değildir.

Hangi Programlama dilini öğrenmek için bir karar vermeniz gerekiyorsa, en başta SYNTAX'lara bakmalısınız.

Daha sonra, kendinize çözmek istediğiniz bir sorun seçip tüm platformlarda çözümünü incelemelisiniz.
O halde, SYNTAX'a karar vermek daha kolay olur. Böylece programlama dillerinin yeteneklerini de kolayca anlamış olursunuz.