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使用相关推荐

  1. Log信息获取调用类和调用方法名的实现原理

    2019独角兽企业重金招聘Python工程师标准>>> 恰好看到关于log的讨论.想起以前调查的一个问题.整理出来,希望对大家能有所帮助. Sun JDK 源代码下载 http:// ...

  2. 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 ...

  3. PHP的Reflection反射机制

    原文地址: http://www.nowamagic.net/php/php_Reflection.php PHP5添加了一项新的功能:Reflection.这个功能使得程序员可以 reverse-e ...

  4. Java Reflection(十):数组

    原文地址 作者: Jakob Jenkov 译者:叶文海(yewenhai@gmail.com) 内容索引 java.lang.reflect.Array 创建一个数组 访问一个数组 获取数组的Cla ...

  5. 【Java】反射( reflection)机制 详解

    目录 1. 定义 2. 用途(了解即可) 3. 反射的基本信息 4. 反射相关的类(重要) 4.1 Class类(反射机制的起源 ) 4.2 Class类中的相关方法(方法的使用方法在后边的示例当中) ...

  6. 我的实用设计模式 - Simple Factory和Reflection

    更新1:使用as转换数据类型. 在上篇文章 我的实用设计模式 - Simple Factory,Factory Method和Abstract Factory 讲述了Simple Factory,Fa ...

  7. C#反射(Reflection)详解

    1. 什么是反射 2. 命名空间与装配件的关系 3. 运行期得到类型信息有什么用 4. 如何使用反射获取类型 5. 如何根据类型来动态创建对象 6. 如何获取方法以及动态调用方法 7. 动态创建委托 ...

  8. java的reflection

    Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性.例如,使用它能获得 Java 类中 ...

  9. Go 语言:The Laws of Reflection 中文版

    翻译了一篇 Go 官方博客介绍反射的文章: 原文地址 免翻墙版 简介 在计算机科学中,反射是一种在运行时检测自身结构(类型)的能力,反射构成元编程的基础,也是混乱的来源. 在这篇文章中我们会尝试澄清 ...

  10. Caused by: org.apache.ibatis.reflection.ReflectionException我碰到的情况,原因不唯一

    映射文件: <select id="selectKeyByUserId"  resultMap="Xxx">         <![CDATA ...

最新文章

  1. 自然语言处理(NLP)之pyltp的介绍与使用(中文分词、词性标注、命名实体识别、依存句法分析、语义角色标注)
  2. CentOS7,使用tar命令解压缩文件
  3. mysql一些查询方法记录
  4. 推荐一款非常好用的java反编译工具(转)
  5. unity节目素材ProceduralMaterial采用
  6. AngularJS基础01 从HelloWorld说起
  7. boost::hana::when用法的测试程序
  8. javascript 查找文本并高亮显示
  9. 计算机最佳参数,对使用者来说,学会计算机性能参数提取,给出性能评价很重要...
  10. Java CSV操作(导出和导入)
  11. linux(Centos7系统)中安装JDK、Tomcat、Mysql
  12. 关于Win10系统的封装
  13. stm32-DCMI—OV2640摄像头
  14. Tibco Designer -- 构建EAR文件
  15. python编程用什么软件-python用什么软件编写
  16. vue.jsv-html,Vue.js-资料-组件化思想 —下
  17. 文本框直接粘贴添加图片构想
  18. 《房债》书中的精髓:现代金融系统让全世界的人同处一艘经济大船上,一些人搞坏了船,所有的人都跟着遭殃。
  19. Apple Catching经典dp
  20. oracle 结果集已耗尽_java.sql.SQLException: 结果集已耗尽,解决方法!

热门文章

  1. iOS 相册多选 相机选择图片
  2. 笔记本风扇噪音大的解决方法
  3. 客户端无法向springcloud注册中心注册服务,提示连接超时
  4. delphi oracle 分页,使用原生ADO对数据进行分页显示delphi数据库操作下载
  5. linux 查看开机启动项
  6. instant java,关于java:Format Instant to String
  7. 解决网站mp4视频不能边播放边下载的问题!(终极解决方案)
  8. android音乐播放器横评,14款Android音乐播放器年度横评 安卓播放器对比测评
  9. 微信小程序: wx:key详解
  10. 分析QQ和QQ游戏的价值特性极其快速发展的原因,并对其盈利模式进行探讨