*反射机制2(Class类对象实例化)

java.lang.Class类是所有反射操作的源头,即:所有的反射操作都要从此类开始进行,而最关键的是,这个类有三种实例化方式:
1.调用Object类中的getClass方法(很少用)


    public static void main(String[] args) throws Exception{
        Date date=new Date();
        Class <?> cls=date.getClass();
        System.out.println(cls);

    }   

2.使用"类.class"取得:(最重要的用法 Spring Mybatis框架原理)

    public static void main(String[] args) throws Exception{
        
        Class <?> cls=Date.class;
        System.out.println(cls);

    }   

之前是在产生了类的实例化对象之后取得的Class类对象,但是此时并没有实例化对象产生

3.调用Class类提供的一个方法(用的最多)

public static Class<?> forName(String className)
throws ClassNotFoundException

实例化Class类对象。


    public static void main(String[] args) throws Exception{
        
        Class <?> cls=Class.forName("java.util.Date");
        System.out.println(cls);

    }   

第三种方式可以不用import语句导入一个明确的类,而类名称是采用字符串的形式进行描述的(第一第二种需要import)

猜你喜欢

转载自blog.csdn.net/weixin_34331102/article/details/87040370
今日推荐