Discuss / Java / 我有个问题

我有个问题

Topic source

不器

#1 Created at ... [Delete] [Delete and Lock User]

老师说无法取得带泛型的class,我没有用泛型,为啥得到的ct1和ct2的class也是一样的,是不是说无论我是否用泛型,类.getclass都是得到的当前类的class

String v;int i;public CastType(String v) {    this.v = v;}public CastType(Integer i) {    this.i = i;}
CastType ct1 = new CastType("sss");CastType ct2 = new CastType(123);Class c1 = ct1.getClass();Class c2 = ct2.getClass();System.out.println(c1==c2);//结果为true

z

#2 Created at ... [Delete] [Delete and Lock User]
因为Class实例在JVM中是唯一的,所以上述方法获取的Class实例是同一个实例

0

#3 Created at ... [Delete] [Delete and Lock User]
Pair<String> p1 = new Pair<>("Hello", "world");
Pair<Integer> p2 = new Pair<>(123, 456);
// 老师说无法取得带泛型的class应该指的是<???>中的class


Class c1 = p1.getClass();
        Class c2 = p2.getClass();
        System.out.println(c1==c2); // true
        System.out.println(c1==Pair.class); // true


  • 1

Reply