class与Class的关系
class:class是java中的关键字,用于创建类
Class: class与Class的关系类似于字符串与String类的关系,class创建的类是Class类的实例,Class类是对所有类的抽象和集合.
Class类介绍
Class是一个位于Java.lang包里的类
private Class(ClassLoader loader, Class<?> arrayComponentType) {
// Initialize final field for classLoader. The initialization value of non-null
// prevents future JIT optimizations from assuming this final field is null.
classLoader = loader;
componentType = arrayComponentType;
}
它的构造函数是私有的,所以我们没法通过new关键字来创建它的实例.但Class类提供了三种方法来获取Class对象
- getClass()方法
public static void main(String[] args) {
Student xiaoming = new Student();
System.out.println(xiaoming.getClass());// 获取该对象的类的路径
}
结果
- forName()方法
forName是Class类的一个静态方法,调用这个方法并传入类的路径便可以得到这个类的对象
这个方法返回的是一个Class对象如Student类
Class student = Class.forName("dailypratice.Student");
System.out.println(student);
此时这个 student 便可以当成Student类来用
- 类名.class
这个返回是该Class对象的路径
Class c = Student.class;
System.out.println(c);