zoukankan      html  css  js  c++  java
  • 【Java学习】追踪

    获取类名的方法  

    Java 中获取类名的方式主要有以下三种。

      getName()返回的是虚拟机里面的class的类名表现形式。
      getCanonicalName()返回的是更容易理解的类名表示。
      getSimpleName()返回的是类的简称。
      都有什么区别?
      通过一个实例来看下它们主要的区别。





      程序输出以下结果。


      [Lcom.test.TestClass$TestInnerClass;值得说明一下。
      这是一种对函数返回值和参数的编码,叫做JNI字段描述符(JavaNative Interface FieldDescriptors)。
      [表示数组,一个代表一维数组,比如[[代表二维数组。之后L代表类描述符,最后;表示类名结束。
      结论
      1、从以上结果可以看出 getName() 和 getCanonicalName() 在获取普通类名的时候没有区别,在获取内部类和数组类有区别的。
      2、getSimpleName() 在获取普通类和内部类名的时候没区别,在获取数组类的时候有区别。

    获取线程名:

    new  Thread().getName

    获取堆栈跟踪

    Thread.currentThread().getStackTrace()[1].

    存在如下方法:

          

  • 相关阅读:
    hud 1166 敌兵布阵
    zznu 1914 asd的甩锅计划
    poj 1860 Currency Exchange
    poj 3026 Borg Maze (BFS + Prim)
    poj 2349 Arctic Network
    POJ 1502 MPI Maelstrom
    poj 1308 Is It A Tree?
    hdu 1272 小希的迷宫
    poj 1679 http://poj.org/problem?id=1679
    POJ 2492 A Bug's Life
  • 原文地址:https://www.cnblogs.com/gtea/p/13696953.html
Copyright © 2011-2022 走看看