Class类
获取Class实例的三种常见方式:(注意啊,这里说的是Class的实例,Class的实例就是其他类。)
Class clazz1 = String.class;
Class clazz2 = person.getclass();
Class clazz3 = Class.forName("String..")
-
谈一谈你对Class类的理解:
Class实例对应着加载到内存中的一个运行时类。
-
创建Class对应运行时类的对象的通用方法,代码实现。以及这样的操作,需要对应的运行时类构造器方面满足的要求
Object obj = clazz.newInstance();
- 所创建的类,必须要有空参的构造器
- 权限修饰符的权限要够。通常设为public
如何调用方法show();
类声明如下:
package com.atguigu.java
class User {
public void show(){
System.out.println("今天圣诞夜,洋节,呵");
}
}
User user = (User)clazz.newInstance();
Method show = clazz.getDeclaredMethod("show");
show.setAccessiable(true);
show.invoke(user);//传入实例的具体信息