2つの違いは何ですか:
最初 :
ArrayList<String> linkList = new ArrayList<String>();
2番目 :
ArrayList linkList = new ArrayList<String>();
それとも違いはありますか?
ArrayList<String> linkList = new ArrayList<String>();
タイプ セーフを確保するためにジェネリックを使用します。
ArrayList linkList = new ArrayList<String>();
しません。@BruceMartinが指摘しているように、これは行が
linkList.add(0);
String element = (String) linkList.get(0);
最初のケースではコンパイル時エラーが発生しますが、実行時に 2 番目の宣言で失敗します。
別の例として、2 つの選択肢からの 2 番目のバリアントにはキャストが必要get()
です。String
String element = linkList.get(0);
2番目:
String element = (String) linkList.get(0);
コンパイル時:最初のものはジェネリックを使用し、型の安全性とコードの可読性を保証します。
実行時:それらは同じです。
また、最初のケースではlinkListは String 型であり、2 番目のケースではObject型です。