Solo quiero aclarar una cosa. Esta no es una pregunta sobre cuál es mejor, esa parte se la dejo a otra persona para que la discuta. No me importa Me hicieron esta pregunta en mi entrevista de trabajo y pensé que podría ser útil aprender un poco más.
Estos son los que se me ocurren:
- Java es "plataforma independiente". Bueno, hoy en día se podría decir que existe el proyecto Mono , por lo que C # también podría considerarse, pero creo que es un poco exagerado. ¿Por qué? Bueno, cuando se realiza una nueva versión de Java, está disponible simultáneamente en todas las plataformas que admite, por otro lado, ¿cuántas características de C # 3.0 aún faltan en la implementación de Mono? ¿O es realmente CLR vs. JRE que deberíamos comparar aquí?
- Java no admite eventos y delegados. Por lo que sé.
- En Java todos los métodos son virtuales.
- Herramientas de desarrollo: creo que todavía no existe una herramienta como Visual Studio. Especialmente si has trabajado con ediciones en equipo, sabrás a qué me refiero.
Por favor agregue otros que considere relevantes.
Actualización: Acabo de aparecer en mi mente, Java no tiene algo como atributos personalizados en clases, métodos, etc. ¿O sí?