★★Java質問・相談スレッド149★★
■ このスレッドは過去ログ倉庫に格納されています
0840デフォルトの名無しさん
2011/11/21(月) 11:37:49.65これは、コンパイルされて
ArrayList<Object> list = new ArrayList<Object>(); list.add("a"); String s = (String)list.get(0);
こうなる。ただこれだけの仕組み。Tに何が指定されてたかの情報は失われる。
だから new T() はTが何かに関わらず「常に」new Object() と同じなので意味がない。
T[] なんかも同様に Object[] になってしまう。
クソだろう? 互換性の都合。
■ このスレッドは過去ログ倉庫に格納されています