Да, с точки зрения логики это неправильно. К сожалению, в джаве многие вещи (в т.ч. базовые) не реализованы так, как должно/не реализованы вообще. Плюс Sun очень заботится об обратной совместимости, т.о. баги, присутствующие в начальной реализации просто не фиксятся в новых версиях, чтобы не сломать существующий код. Это можно считать минусом, можно считать плюсом, в любом случае это надо принять как данность и просто знать такие моменты (напарываться на баги и узнавать о них).
Идеального продукта не существует, на то он и идеальный. У джавы имхо есть много плюсов, которые перевешивают минусы, в т.ч. и упоминаемый