Javaにはunsignedがない。.NETにはJ#がある。ってのが簡単な理由じゃあるまいか。

Z80の相対ジャンプにはキャリーフラグでの条件ジャンプはあったが、オーバーフロー
(パリティ)フラグによるものはなかった、とか
一般にキャリーを見るよりもオーバーフローを見る方が1ビットだけコストが高い、とか
ヲタッキーな遠因を語ってもいいけどね。