08/01/24 14:51:11
>>524
> Vector data = new Vector<クラス名>();
>
> これってどんな意味ですか?
>
> Vector data = new Vector();
> これとどう違うのですか?(こちらの意味は普通にわかります)
Vector<Type> data = new Vector<Type>();
今までは Object なら何でも入れられたけど強力すぎて
バグの元だからなんとか制限しましょ、てことだと思っ
てる。上の例だと data に add するには Type か、
Type を継承してる必要がある。
ところが remove() とかは Object を渡せちゃうんだよ
ね。
それと Type 情報は最終的には消えちゃうので C++ の
ような型安全性とはちょっと違うのもポイント(ゴリゴ
リ書いてれば「アレ?」というケースがママ登場する)。