反射

package cn.jason.reflect;
import cn.jason.domain.Person;
public class ReflectDemo {
         public static void main(String[] args) throws ClassNotFoundException {
           /*
                     * 反射技术:动态的获取类以及类中的成员,并可以调用该类成员
            * 以前是有什么类,就new什么对象。没有类,给什么类就new什么对象
            *
            * 无论new什么对象,都需要先获取字节码文件
            * 如何获取呢?发现java已对字节码文件进行了描述用的class类完成的
            *
            * 如何获取一个字节码文件的对象呢?
            *
            * 方式一: Object  getClass();方法。发现在反射技术里,该方法不合适,反射技术部明确具体类
            *
            * 方式二: 所有的数据类型都有自己对应的class对象,表示方式很简单。
            * 每一个数据类型都有一个默认的静态的属性,.class,用该属性就可以获取到字节码文件对象。
            * 虽然不用对象调用了,还是要用具体的类调用静态属性。
            *
            
   */
  
//  mathodDemo_1();
//  mathodDemo_2();
  mathodDemo_3();
 }
 //获取三
 public static void mathodDemo_3() throws ClassNotFoundException {
          String className = "cn.jason.domain.Person";
          Class clazz = Class.forName(className);
          System.out.println(clazz);
 }
 //获取二
 public static void mathodDemo_2(){
           Class clazz1 = Person.class;
           Class clazz2 = Person.class;
           System.out.println(clazz1 == clazz2);
 }
 
 //获取class对象的方式一
 public static void mathodDemo_1(){
           Person p1 = new Person();
           Class clazz1 = p1.getClass();
  
           Person p2 = new Person();
           Class clazz2 = p2.getClass();
           System.out.println(clazz1 == clazz2);
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值