在动力节点这阶段的学习中,让我最深刻的知识点就是反射,以前我也找过一些资料自学过,但是没有老师讲的深入,通过这次学习,感觉了解的更透彻了。
一、先看一下反射的概念:
主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。
反射是Java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接。但是反射使用不当会成本很高!
二、反射机制的作用:
1、反编译:.class-->.java
2、通过反射机制访问Java对象的属性,方法,构造方法等;这样好像更容易理解一些,下边我们具体看怎么实现这些功能。
三、在这里先看一下sun为我们提供了那些反射机制中的类:
java.lang.Class;
java.lang.reflect.Constructor; java.lang.reflect.Field;
java.lang.reflect.Method;
java.lang.reflect.Modifier;
很多反射中的方法,属性等操作我们可以从这四个类中查询。还是那句话要学着不断的查询API,那才是我们最好的老师。
四、具体功能实现:
1、反射机制获取类有三种方法[size=18.6667px]
2、[size=18.6667px],创建对象:获取类以后我们来创建它的对象,利用[size=18.6667px]new[size=18.6667px]Instance[size=18.6667px]:[size=18.6667px] 3,获取属性:分为所有的属性和指定的属性:
a、先看获取所有的属性的写法
b、获取特定的属性,对比着传统的方法来学习:
这样我们就可以获得类的各种内容,进行了反编译。对于Java这种先编译再运行的语言来说,反射机制可以使代码更加灵活,更加容易实现面向对象。
这样的好处是很容易的方便我们变换数据库,例如我们将系统的数据库从SQL Server升级到Oracle,那么我们写两份D层,在配置文件的内容改一下,或者加条件选择一下即可,带来了很大的方便。
当然了,Java中其实也是一样,只不过这里的配置文件为.properties,称作属性文件。通过反射读取里边的内容。这样代码是固定的,但是配置文件的内容我们可以改,这样使我们的代码灵活了很多!
通过在动力节点Java面授学习的第二阶段中,我觉得对于Java反射,虽然在运用中它会使我们的软件性能降低,复杂度增加,但如果我们可以灵活的运用它,它能够使我们的代码更加灵活,总的来说利还是大于弊。
以上就是动力节点Java培训机构小编介绍的“学习Java编程入门到精通”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
Java全套自学资料
Java自学视频教程(免费学习):http://www.bjpowernode.com/video.html
Java技术教程:http://www.bjpowernode.com/tutorial/
相关文章
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习