Javaはそんなに簡単ではないと思う
静的型と実行時型情報が共存していたら混乱するのが普通だろう