文档章节

JAVA反射的概念、实现功能、应用场合

学而时习之
 学而时习之
发布于 2015/02/27 17:13
字数 312
阅读 32
收藏 0

1、反射的概念

        构建框架技术的基础之一。运行时获取类的信息并调用类对象的方法的功能。

2、动态性质

    2.1    运行时生成对象实例。

    2.2    运行期间调用方法。

    2.3    运行时更改属性。

3、实现功能

    3.1    运行时判断任意一个对象所属的类。

    3.2    运行时判断一个类所具有的方法和属性。

    3.3    运行时构造任意一个类的对象。

    3.4    运行时调用任意一个对象的方法。

    3.5    生成动态代理。

4、应用场合

    4.1    编译时类型与运行时类型

            如:Person p = new Student(); 

            编译时类型:Person (由声明该对象时的类型决定)

            运行时类型:Student (有实际赋给该对象的类型决定)

    4.2    场合

            程序在运行时接收到外部传入的对象,该对象的编译时类型为Object,程序需要调用该对象运行时类型的方法。

            为了解决这个问题,程序需要在运行时发现对象和类的真实信息,必须使用反射。

© 著作权归作者所有

共有 人打赏支持
学而时习之
粉丝 29
博文 93
码字总数 42877
作品 0
西安
私信 提问
Dubbo源码分析(7):Javassist字节码技术生成代理

Java动态编程的作用: 通过配置生成代码,减少重复编码和维护成本 我们常用到的动态特性主要是反射,在运行时查找对象属性、方法,修改作用域,通过方法名称调用方法等。在线的应用不会频繁使...

郑加威
09/28
0
0
作为一个java程序员这些技能你都知道吗?

一、Java特点 1、 面向对象 尽管受到其前辈的影响,但Java没被设计成兼容其他语言源代码的程序。这允许Java开发组自由地从零开始。这样做的一个结果是,Java语言可以更直接、更易用、更实际的...

java高级架构牛人
05/23
0
0
JAVA的内省(introspector)与反射(reflection)

很多朋友在深入的接触 JAVA 语言后就会发现这样两个词:反射 (Reflection) 和内省 (Introspector) ,经常搞不清楚这到底是怎么回事,在什么场合下应用以及如何使用?今天把这二者放在一起介绍...

Sky__
2010/09/30
0
0
老司机带你深入浅出Java反射

反射,它就像是一种魔法,引入运行时自省能力,赋予了 Java 语言令人意外的活力,通过运行时操作元数据或对象,Java 可以灵活地操作运行时才能确定的信息 这里笔者就深入浅出总结下Java反射,...

小刀爱编程
11/07
0
0
有一到五年开发经验的JAVA程序员需要掌握的知识与技能!

JAVA是一种平台,也是一种程序设计语言,如何学好程序设计不仅仅适用于JAVA,对C++等其他程序设计语言也一样管用。有编程高手认为,JAVA也好C也好没什么分别,拿来就用。为什么他们能达到如此...

java高级架构牛人
06/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Yearning基于Inception的开源SQL审核平台

基础环境: python3 nodejs vuejs mysql python-ldap pymysql mysql 新建数据库 create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; Navicat导入初始化数据 : ......

以谁为师
12分钟前
0
0
flutter Expanded用法

使用的地方:一个分类,类似京东的,左右两边都可以滑动 Widget build(BuildContext context) { return Row(children: [ Column( children: <Widget>[ Ex......

大灰狼wow
17分钟前
2
0
Java8 Map中新增的方法使用总结

前言 得益于 Java 8 的 default 方法特性,Java 8 对 Map 增加了不少实用的默认方法,像 getOrDefault, forEach, replace, replaceAll, putIfAbsent, remove(key, value), computeIfPresent,......

kaixin_code
27分钟前
1
0
@TransactionConfiguration

@TransactionConfiguration过时与替代写法 @TransactionConfiguration 替代写法

miaojiangmin
29分钟前
0
0
浅谈Vue响应式(数组变异方法)

很多初使用Vue的同学会发现,在改变数组的值的时候,值确实是改变了,但是视图却无动于衷,果然是因为数组太高冷了吗? 查看官方文档才发现,不是女神太高冷,而是你没用对方法。 看来想让女...

开元中国2015
30分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部