java——Class、动态加载

Class和Object混淆了?

  Object: 任何类都是Object类的子类

  Class: 任何类都是Class的实例对象

  Class可以说是一种特殊的类,它表示的是类类型,Object仍然是Class类的父类,而Object也会有它自己的类类型:java.lang.Object。

import X_X.model.user.User;

public class T{
    public static void main(String[] args) {
        User user = new User();
        Object o = new Object();
        Class c1 = user.getClass();
        Class c2 = o.getClass();
        System.out.println(c1);
        System.out.println(c2);
    }
}

输出:

  class X_X.model.user.User
  class java.lang.Object

动态加载、静态加载:

  动态加载:

import X_X.model.user.User;

public class T{
    public static void main(String[] args) throws Exception{
        Class c = Class.forName("X_X.model.user.User");
        User user = (User)c.newInstance();
        System.out.println(user);
    }
}

  静态加载:new创建对象是静态加载,在编译时刻就需要加载所有可能使用到的类。

猜你喜欢

转载自www.cnblogs.com/gaoquanquan/p/10206192.html