码迷,mamicode.com
首页 > 编程语言 > 详细

Java-反射

时间:2018-08-12 17:13:23      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:三种方式   double   需要   inf   static   方式   lock   com   rate   

反射 反射就是把java类中的各种成分映射成一个个的Java对象。
获取Class对象的三种方式

  1. Object ——> getClass();
  2. 任何数据类型(包括基本数据类型)都有一个“静态”的class属性。
  3. 通过Class类的静态方法:forName(String className)最常用的
    举例
package reflect;

public class Drink {
    private double price;   

    public Drink(double price) {
    //  super();
        this.price = price;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

}
package reflect;

public class DrinkTest {
     public static void main(String[] args) {
        Drink drink = new Drink(12);
        Drink drink1 = new Drink(13);
        
        //第一种:通过对象的getClass()方法
        System.out.println(drink.getClass().getName());
        System.out.println(drink.getClass()==drink1.getClass());
        
        //第二种:通过class属性;
        System.out.println(Drink.class==drink.getClass());
        
        //第三种:通过Class类的静态方法forName();       
        try {
            //需要带上包名;
            System.out.println(Class.forName("reflect.Drink")==drink.getClass());
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        
    }
}

运行结果
技术分享图片
在运行期间一个类只有一个Class对象产生
参考*
https://blog.csdn.net/sinat_38259539/article/details/71799078

Java-反射

标签:三种方式   double   需要   inf   static   方式   lock   com   rate   

原文地址:https://www.cnblogs.com/LynnMin/p/9463201.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!