Muy buena pregunta. Siempre me lo pregunté durante algunos años posteriores en el pasado, pensé que había una razón legítima detrás de esto, pero realmente no lo hay.
Creo que la respuesta es bastante simple, y muchas respuestas realmente no están investigando el problema.
Si su idioma permite dibujar piexel en la pantalla, es 100% posible crear un marco de interfaz gráfica de usuario basado en él que imitará los controles de formulario de Windows & siente con precisión.
Dado que Java es multiplataforma, también es completamente posible asegurarse de que, en función del tipo de sistema en ejecución real (Mac / Windows), la IU opte por verse diferente en ambas plataformas, coincidiendo con el estilo de la plataforma de ejecución.
Como puede ver en XAML, por ejemplo, la IU se puede presentar fácilmente en una forma y lenguaje muy estructurados. También es posible elegir los comportamientos "nativos" si se toma tiempo para hacer esto.
Por lo tanto, sería posible crear un marco de GUI que permitiría a los desarrolladores de Java obtener aplicaciones que parecerían nativas en Mac y Windows.
Entonces llegamos a Swing, que es solo un marco de GUI de la infinidad potencial de marcos de GUI que podrían crearse para Java. Se comporta como se programó, lo que no sigue el proceso anterior y obtiene aplicaciones de aspecto extraño en ambos sistemas. Esa es la elección hecha por los desarrolladores de Swing, nadie los obligó a hacer esto y comportarse de esa manera.