好问题
Good  Question
  • 首 页
  • 问题
    • PHP
    • JAVA
    • CPlusPlus
    • C#
    • SQL
  • 关 于
  • 联 系
什么java的反射(reflection) 关闭 返回上一级  

什么java的反射(reflection)
+ 查看更多

发布日期:2018-03-10 14:08
分类:JAVA
浏览次数:160
什么是反射,并且他有什么用?我对java很感兴趣,但是我认为他和其他语言的原理并没有什么不同

回答:

反射是用于描述可以检查其他代码或者自身的代码的一种机制,比如你有一个未知类型的对象,你想调用一个他的方法,java本身是不支持这种调用的除非你用已知接口确定了对象的类型,但是反射机制可以,检查对象是否有此方法并且调用它。
以下是反射模式的一个简单实现的例子:
Method method = foo.getClass().getMethod("doSomething", null);
method.invoke(foo, null);
这种机制在测试代码时候最常用。比如你使用JUint4时,将会逐个检查类的方法并且打上@测试注释,然后在运行单元测试的时候调用他们
[你可以查看文档示例了解更多[http://docs.oracle.com/javase/tutorial/reflect/index.html]]
最后,这个的思想和其他支持反射的静态语言非常类似(比如C#)。在动态类型语言中,上面描述的用例是不必要的(因为编译器将允许任何对象调用任何方法,如果不存在则在运行时失败),但作为第二种查找以特定方式工作或者被标记的方法时仍然是常见的。
上一篇如何声明一个数组
在Java中跳出嵌套循环下一篇
下一篇在Java中跳出嵌套循环

最新文章

  • 函数`__construct`用来干嘛的
    发布日期:2018-03-26
  • 通过访客的IP得到他们的地区
    发布日期:2018-03-26
  • 合并两个PHP对象的最好的方法是什么?
    发布日期:2018-03-26
  • 该如何把一该如何把一个对象转化成数组?
    发布日期:2018-03-26
  • 什么是输出缓冲区?
    发布日期:2018-03-26
  • 在PHP中怎么把用逗号分隔的字符串分隔在一个数组里?
    发布日期:2018-03-26
  • 在PHP中使用foreach循环时查找数组的最后一个元素
    发布日期:2018-03-26
关于好问
收集整理一些有用的问题和回答,造福中国的程序旺和IT喵们!
友情链接
起飞页 
相关信息
版权声明
Copyright © 2016 - 2022  苏州卡达网络科技有限公司 备案号:苏ICP备09008221号