weixin_42349016 2009-11-15 00:02
浏览 158
已采纳

JSE里面的反射机制到低是什么???

:) :(

  • 写回答

3条回答 默认 最新

  • lijiepeng 2009-11-15 15:09
    关注

    反射本身是Java开放性的一个产物.
    普通的编程方式是在编译期确定类之间的关系,反射则提供在运行时分析类,并使用.
    Java虚拟机装载一个类型到内存,类型初始化结束标志是生成一个这个类型的Class对象.
    可以这样理解Class对象, .java文本文件是对人可读的类型信息磁盘文件, .class二进制文件是对Java虚拟机可读的类型信息
    磁盘文件, Class对象是此类型在内存中的类型信息, 这三种描述的信息是相同的,只是针对不同的阅读对象和不同时刻的不
    同表现形式. 类是模板来生成对象,这是概念级别的,真正到实现阶段就是在内存中有此类型的Class对象,由此Class对象来
    生成类型的对象. 普通编程方式是看着.java文件来提取信息,比如你所看到的实例变量,构造方法,实例方法. 这些信息在Class
    对象中都有一一对应的表示.由Class,及反射包中的Field,Constructor,Method类来对应.
    Java的动态连接将使得.class文件可以在运行时由二进制名动态加载,加载-连接-类型初始化结束后生成Class对象.
    反射可以看成是从另一个角度进行编程,好处是提供极大的灵活性,扩展性,但也有它自身的缺点如不直观,效率低等.
    简单这样说:框架,基础代码会更多的用到,普通业务编程应该较少的用到.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测