为什么使用java反射
4个回答
展开全部
Java反射最大的好处就是能在运行期间,获得某个类的结构、成员变量,用来实例化。
下列是具体使用场景:假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码能否通过编译呢?这是不能通过编译的。利用Java反射的机制,就可以让第一个程序员在没有得到第二个程序员所写的类的时候,来完成自身代码的编译。Java的反射机制它知道类的基本结构,这种对Java类结构探知的能力,我们称为Java类的“自审”。大家都用过Jcreator和eclipse。当我们构建出一个对象的时候,去调用该对象的方法和属性的时候。一按点,编译工具就会自动的把该对象能够使用的所有的方法和属性全部都列出来,供用户进行选择。这就是利用了Java反射的原理,是对我们创建对象的探知、自审。
下列是具体使用场景:假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码能否通过编译呢?这是不能通过编译的。利用Java反射的机制,就可以让第一个程序员在没有得到第二个程序员所写的类的时候,来完成自身代码的编译。Java的反射机制它知道类的基本结构,这种对Java类结构探知的能力,我们称为Java类的“自审”。大家都用过Jcreator和eclipse。当我们构建出一个对象的时候,去调用该对象的方法和属性的时候。一按点,编译工具就会自动的把该对象能够使用的所有的方法和属性全部都列出来,供用户进行选择。这就是利用了Java反射的原理,是对我们创建对象的探知、自审。
展开全部
java的反射定义在java.lang.reflection里面,能够在运行时获取,调用一个对象的属性,方法。通常在一下一些场景用到:
获取,调用private方法,属性。private属性,方法编码的时候是无法访问的,但运行时可以用反射调用。一个常见场景就是调用Android系统中的未开放接口。
调用编码时候无法确定的属性,方法。就是说在写代码的时候你还不知道一个对象中有哪些属性,方法,只有在运行时才知道。往往一些类库会使用,比如Struts,hibernate等等。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样的问题,应该百度
"java 反射 应用场景"
结果不少。建议查看:
http://blog.csdn.net/yaowj2/article/details/8496581
http://www.cnblogs.com/malloc/archive/2011/03/19/1989096.html
我再给你些解释。
比如:MVC结构的web项目。每一个页面的动作对应一个控制层的方法,再去调用一个业务逻辑方法。为了减少程序员的代码量等,可以将所有界面的动作对应同一个控制层方法。这个方法与界面达成一种约定,通过反射就可以调用对应的业务方法。这样就算一个应用场景。
"java 反射 应用场景"
结果不少。建议查看:
http://blog.csdn.net/yaowj2/article/details/8496581
http://www.cnblogs.com/malloc/archive/2011/03/19/1989096.html
我再给你些解释。
比如:MVC结构的web项目。每一个页面的动作对应一个控制层的方法,再去调用一个业务逻辑方法。为了减少程序员的代码量等,可以将所有界面的动作对应同一个控制层方法。这个方法与界面达成一种约定,通过反射就可以调用对应的业务方法。这样就算一个应用场景。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询