84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
1.这个是泛型Class<?> c = A.class ?可以是任意类型 就比如ArrayList array = new ArrayList(); array.add(1);可以array.add("1");也可以但是你放到了这个ArrayList中的数据类型明显就乱了 这样的数据不安全没有价值 所以必须如下ArrayList<String> array=new ArrayList<String>(); 这时候你的array.add(1);就会报错 不可以存放int 类型的数据 2.编译不是报错是警告 warn error 是不一样的 3如图修改后就参数对应就没有警告了
其实这么写就可以了。
public static void main(String[] args) { A a1 = new A(); Class<?> c = A.class; try { Method m = c.getMethod("print", int.class, int.class); Object o = m.invoke(a1, 10, 20); } catch (Exception e) { e.printStackTrace(); } }
为什么传Integer[]会有警告,因为参数类型是Object...。
Integer[]
Object...
1.这个是泛型Class<?> c = A.class ?可以是任意类型 就比如ArrayList array = new ArrayList(); array.add(1);可以array.add("1");也可以但是你放到了这个ArrayList中的数据类型明显就乱了 这样的数据不安全没有价值 所以必须如下ArrayList<String> array=new ArrayList<String>(); 这时候你的array.add(1);就会报错 不可以存放int 类型的数据
2.编译不是报错是警告 warn error 是不一样的
3
如图修改后就参数对应就没有警告了
其实这么写就可以了。
为什么传
Integer[]
会有警告,因为参数类型是Object...
。