到底什么是反射,之前我只知道java反射是学习SSH等框架必须使用的。
package refllect; import java.lang.reflect.Constructor; import domain.User; public class ReflectTest { public static void main(String[] args) throws Exception { Class clazz = User.class; Object o = create(clazz); System.out.print(o); } static Object create(Class clazz) throws Exception{ Constructor c = clazz.getConstructor(String.class); Object o = c.newInstance("new name"); return o; } }
package domain; import java.util.Date; public class User { public User() { } public User(String name) { this.name = name; } private int id; private String name; private Date birthday; private float money; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public float getMoney() { return money; } public void setMoney(float money) { this.money = money; } @Override public String toString() { return "User [id=" + id + ", name=" + name + " birthday=" + birthday + " money=" + money + "]"; } }
从书上第一个例子来看,反射就是在一个方法内,在不知道构建什么类的实例的情况下,构造一个类的实例,说起来有的绕,但感觉这东西好基础。
其实构建实例就是这么简单的一句
Object o = clazz.newInstance();
不过这只能够实例化,无参构造方法的类,也就是默认的。
Constructor c = clazz.getConstructor(String.class);
上面这句是创建了一个构造器然后,再用这个构造器去创建实例。
可是我有个疑问,这么简单的东西,很多书为什么会花那么长的篇幅去介绍呢???
是我还有很多东西没学,还是我理解的不对。
相关推荐
对于信号来说,它不会区分到底是什么,信号所感受到的只有阻抗。如果信号感受到的阻抗是恒定的,那么他就会正常向前传播,只要感受到的阻抗发生变化,不论是什么引起的(可能是中途遇到的电阻,电容,电感,过孔,...
在web开发中,经常遇到...而使用hibernate,它的修改是基于对象的,如果用户修改的字段非常多,但是我们并不知道用户到底修改了那个字段,这时候就需要一个一个的去判断,因此非常耗时,所以我写了个工具类来帮助大家!
- 某个类到底实现了哪些接口。 2. **`Class`对象的生成方式**: - 对于每个类而言,JRE都为其保留了一个不变的`Class`类型的对象。 - `Class`对象只能由系统建立对象。 - 一个类在JVM中只会有一个`Class`实例。...
反射到底是个什么东西? 它的本质就是一个对象(JS内置的),里边有一些函数可供调用。 为什要叫做反射? 因为它能做的事情,和其他语言(Java、python等)中的反射很相似。其他语言中都叫做反射了,那就共鸣...
题目中的情况表明,小红需要移动位置并增大镜头到底片的距离,使底片上的像与小明的一样大。 5. 光的折射和光路图:人眼看到水中物体的位置比实际位置高,这是因为光从水中射向空气时发生了折射。激光笔照亮鹅卵石...
“当物体位于器件的通道时,从LED发出的光将返回到底座,照射光电晶体管的表面。”OPTEK技术公司的营销副总裁Alan Bennett解释到,“发射器和传感器都采用透明窗口保护,这样便于器件在布满灰尘的环境中使用,比如...
废话不多说,现在讲讲RPC到底是什么 RPC基本原理 RPC全程Remote Procedure Call Protocol,即远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC采用客户机/...
14. 照相机应用:焦距相等的照相机,若底片上的像变大,需减小镜头到底片的距离。 15. 水滴成像:水滴相当于凸透镜,形成放大、正立的虚像。 16. 光的色散:太阳光通过三棱镜分解为七种颜色,即红、橙、黄、绿、蓝...
目前AR光学显示方案主要包括小棱镜、曲面反射、光波导和小孔成像等。这些方案各有优劣,通常需要考虑到重量、体积、视场角、成像质量等因素。小棱镜方案易于实现,成本较低,但视场角有限;曲面反射可以提供较宽的...
比如光信号的吸收,将光纤衰减器设定一个可以吸收光能的工作波长范围,在这个范围内,其不反射光,减少不必要的回波反射,通过这种方式达到光功率的衰减效果。一般采用空气隔离技术、位移错位技术、衰减光纤技术、...
在这个过程中,激光被分光器分为两束,一束作为参考光直接照射到全息感光底片上,另一束经过分划板后成为照明光,再调整为平行光照射到底片上。全息照片记录了分划板透射光的振幅和位相等全部信息。要观察全息图像,...
★UMLChina为什么叒要翻译《分析模式》? ★[缝合故事]1999-幻影战斗机《分析模式》和分析模式(1) ★《分析模式》第2章中文UML图(已修正原书错误)(2.1-2.6) ★Unified Method并不是RUP ★反射·电动车周某 ★...
- 使用时需调整镜头到底片的距离,这个距离应该在大于焦距且小于2倍焦距的范围内,即物距大于焦距,像距在1倍焦距和2倍焦距之间。 3. 凸透镜成像变化: - 当物体从无穷远向2倍焦距移动时,所成的像会在镜面后向...
"Java从入门到精通第一章到底二十四章"这个教程涵盖了从基础到进阶的全方位Java知识,旨在为初学者提供一个系统的学习路径。 首先,第一章通常会介绍Java的历史、特点和应用领域,以及为什么选择Java作为学习对象。...
但这涉及到底层知识,且风险较高,一般不推荐。 4. 封装类:创建一个与原始类有相同私有成员的新类,通过继承并暴露新的公共接口,间接实现对外部访问私有成员。这种方法相对安全,但增加了代码复杂度。 5. 设计...
【基础】String为什么是final 20 【基础】java中String、StringBuffer、StringBuilder的区别 21 【基础】运行时异常和非运行时异常 参见 21 运行时异常 21 非运行时异常 22 【基础】java引用类型 23 强引用(Strong...
第3节是关于EthoVision的介绍,讲解了EthoVision到底是什么,系统的工作概述,图像感知,图像数字化,对象检测,特征提取,以及行为量化的概念。 第4节讲解了如何设置硬件设备。首先是系统要求,然后是具体的设置...