Reflection的getCallerClass使用
1、通过使用Reflection的getCallerClass:可以得到调用者的类.
import sun.reflect.Reflection; public class T
{ public static void main(String[] args) { T2 t=new T2(); t.g(); }
} class T2
{ public void Ct(){ test(); } public void test(){ System.out.println(Reflection.getCallerClass(-1)); System.out.println(Reflection.getCallerClass(0)); System.out.println(Reflection.getCallerClass(1)); System.out.println(Reflection.getCallerClass(2)); System.out.println(Reflection.getCallerClass(3)); System.out.println(Reflection.getCallerClass(4)); System.out.println(Reflection.getCallerClass(5)); } }
输出:
class sun.reflect.Reflection //-1
class sun.reflect.Reflection //0
class com.Chloe.T2 //1
class com.Chloe.T2 //2
class com.Chloe.T //3
class com.intellij.rt.execution.application.AppMain //4
null //5
由此可见:
调用getCallerClass(x) 传参x的值当
- 等于0 和小于0 - 返回 Reflection类
- 等于1 - 返回自己的类
- 等于2 - 返回调用者的类
- 等于3. 4. …n…层层上传。
Reflection的getCallerClass使用相关推荐
- Log信息获取调用类和调用方法名的实现原理
2019独角兽企业重金招聘Python工程师标准>>> 恰好看到关于log的讨论.想起以前调查的一个问题.整理出来,希望对大家能有所帮助. Sun JDK 源代码下载 http:// ...
- java 7 40,Java 7u40 Java SE 8 sun.reflect.Reflection.getCallerClass
i have read the following post i was wondering what this change really means. 1). Means that this cl ...
- PHP的Reflection反射机制
原文地址: http://www.nowamagic.net/php/php_Reflection.php PHP5添加了一项新的功能:Reflection.这个功能使得程序员可以 reverse-e ...
- Java Reflection(十):数组
原文地址 作者: Jakob Jenkov 译者:叶文海(yewenhai@gmail.com) 内容索引 java.lang.reflect.Array 创建一个数组 访问一个数组 获取数组的Cla ...
- 【Java】反射( reflection)机制 详解
目录 1. 定义 2. 用途(了解即可) 3. 反射的基本信息 4. 反射相关的类(重要) 4.1 Class类(反射机制的起源 ) 4.2 Class类中的相关方法(方法的使用方法在后边的示例当中) ...
- 我的实用设计模式 - Simple Factory和Reflection
更新1:使用as转换数据类型. 在上篇文章 我的实用设计模式 - Simple Factory,Factory Method和Abstract Factory 讲述了Simple Factory,Fa ...
- C#反射(Reflection)详解
1. 什么是反射 2. 命名空间与装配件的关系 3. 运行期得到类型信息有什么用 4. 如何使用反射获取类型 5. 如何根据类型来动态创建对象 6. 如何获取方法以及动态调用方法 7. 动态创建委托 ...
- java的reflection
Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性.例如,使用它能获得 Java 类中 ...
- Go 语言:The Laws of Reflection 中文版
翻译了一篇 Go 官方博客介绍反射的文章: 原文地址 免翻墙版 简介 在计算机科学中,反射是一种在运行时检测自身结构(类型)的能力,反射构成元编程的基础,也是混乱的来源. 在这篇文章中我们会尝试澄清 ...
- Caused by: org.apache.ibatis.reflection.ReflectionException我碰到的情况,原因不唯一
映射文件: <select id="selectKeyByUserId" resultMap="Xxx"> <![CDATA ...
最新文章
- 自然语言处理(NLP)之pyltp的介绍与使用(中文分词、词性标注、命名实体识别、依存句法分析、语义角色标注)
- CentOS7,使用tar命令解压缩文件
- mysql一些查询方法记录
- 推荐一款非常好用的java反编译工具(转)
- unity节目素材ProceduralMaterial采用
- AngularJS基础01 从HelloWorld说起
- boost::hana::when用法的测试程序
- javascript 查找文本并高亮显示
- 计算机最佳参数,对使用者来说,学会计算机性能参数提取,给出性能评价很重要...
- Java CSV操作(导出和导入)
- linux(Centos7系统)中安装JDK、Tomcat、Mysql
- 关于Win10系统的封装
- stm32-DCMI—OV2640摄像头
- Tibco Designer -- 构建EAR文件
- python编程用什么软件-python用什么软件编写
- vue.jsv-html,Vue.js-资料-组件化思想 —下
- 文本框直接粘贴添加图片构想
- 《房债》书中的精髓:现代金融系统让全世界的人同处一艘经济大船上,一些人搞坏了船,所有的人都跟着遭殃。
- Apple Catching经典dp
- oracle 结果集已耗尽_java.sql.SQLException: 结果集已耗尽,解决方法!
热门文章
- iOS 相册多选 相机选择图片
- 笔记本风扇噪音大的解决方法
- 客户端无法向springcloud注册中心注册服务,提示连接超时
- delphi oracle 分页,使用原生ADO对数据进行分页显示delphi数据库操作下载
- linux 查看开机启动项
- instant java,关于java:Format Instant to String
- 解决网站mp4视频不能边播放边下载的问题!(终极解决方案)
- android音乐播放器横评,14款Android音乐播放器年度横评 安卓播放器对比测评
- 微信小程序: wx:key详解
- 分析QQ和QQ游戏的价值特性极其快速发展的原因,并对其盈利模式进行探讨