JAVA中获取类名与行号的代价

我们在使用Java的日志库进行日志打印时,有个微小的功能,打印当前代码行所在的类名,方法名以及行号等信息,这个功能是如何实现的呢?说起来这还是一个推动JDK发展的事情,从最初的没提供相关的能力,到JDK1.5之后提供Thread.currentThread().getStackTrace()方法能够方便的获取StackTraceElement数组,进而方便的拿到类名与行号等信息,也是非常好的一个进化例子。但是我们这里关注的是调用这个方法,给应用带来的消耗是怎么样的?这是个快速简洁的方式么? 上测试验证的代码如下: 一次本地运行效果如下: 其中类型1,是执行类名与代码行号获取,类型0是执行路径完 …