關於java裡面Collection包括List,Map等初始化內部匿名類和泛型的一個例子
阿新 • • 發佈:2018-12-26
package com.yang.generalType; import java.util.ArrayList; import java.util.List; public class TestGeneralType { /** * @param args */ public static void main(String[] args) { List<String> l1 = new ArrayList<String>(){ //這一段應該屬於內部匿名類的一個例子,也是初始化的一種方式。 /** * */ private static final long serialVersionUID = 1L; { add("a"); add("b"); add(doSomething()): } String doSomething(){return "Do something";} //可以自定義一些方法。 }; List<Integer> l2 = new ArrayList<Integer>(); List<Character> l3 = new ArrayList<Character>(); l2.add(1); l2.add(2); System.out.println(l1.getClass().getName()); System.out.println(l2.getClass().getName()); System.out.println(l3.getClass().getName()); System.out.println(l1.getClass() == l2.getClass()); System.out.println(l2.getClass() == l3.getClass()); } }
不知道其中的原理,可以參考一個關於泛型的文章http://songfantasy.iteye.com/blog/977282。
輸出結果:
com.yang.generalType.TestGeneralType$1
java.util.ArrayList
java.util.ArrayList
false
true