java.lang.Object java.lang.StackTraceElement
public final class StackTraceElement
堆栈跟踪中的元素,它由 Throwable.getStackTrace()
返回。每个元素表示单独的一个堆栈帧。所有的堆栈帧(堆栈顶部的那个堆栈帧除外)都表示一个方法调用。堆栈顶部的帧表示生成堆栈跟踪的执行点。通常,这是创建对应于堆栈跟踪的 throwable 的点。
构造方法摘要 | |
---|---|
StackTraceElement(String declaringClass, String methodName, String fileName, int lineNumber) 创建表示指定执行点的堆栈跟踪元素。 |
方法摘要 | |
---|---|
boolean |
equals(Object obj) 如果指定的对象是另一个 StackTraceElement 实例,并且该对象表示的执行点与该实例的相同,则返回 ture。 |
String |
getClassName() 返回类的完全限定名,该类包含由该堆栈跟踪元素所表示的执行点。 |
String |
getFileName() 返回源文件名,该文件包含由该堆栈跟踪元素所表示的执行点。 |
int |
getLineNumber() 返回源行的行号,该行包含由该堆栈该跟踪元素所表示的执行点。 |
String |
getMethodName() 返回方法名,此方法包含由该堆栈跟踪元素所表示的执行点。 |
int |
hashCode() 返回此堆栈跟踪元素的哈希码值。 |
boolean |
isNativeMethod() 如果包含由该堆栈跟踪元素所表示的执行点的方法是一个本机方法,则返回 true。 |
String |
toString() 返回表示该堆栈跟踪元素的字符串。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public StackTraceElement(String declaringClass, String methodName, String fileName, int lineNumber)
declaringClass
- 类的完全限定名,该类包含由堆栈跟踪元素所表示的执行点
methodName
- 方法名,该方法包含由堆栈跟踪元素所表示的执行点
fileName
- 文件名,该文件包含由堆栈跟踪元素所表示的执行点;如果该信息不可用,则该参数为
null
lineNumber
- 源代码行的行号,该代码行包含由堆栈跟踪元素所表示的执行点;如果此信息不可用,则该参数为负数。值 -2 表示包含执行点的方法是一个本机方法
NullPointerException
- 如果
declaringClass 或
methodName 为 null
方法详细信息 |
---|
public String getFileName()
public int getLineNumber()
public String getClassName()
public String getMethodName()
public boolean isNativeMethod()
public String toString()
Throwable.printStackTrace()
public boolean equals(Object obj)
equals(a.getFileName(), b.getFileName()) && a.getLineNumber() == b.getLineNumber()) && equals(a.getClassName(), b.getClassName()) && equals(a.getMethodName(), b.getMethodName())其中定义 equals 为:
static boolean equals(Object a, Object b) { return a==b || (a != null && a.equals(b)); }
obj
- 要与该堆栈跟踪元素相比较的对象。
Object.hashCode()
,
Hashtable
public int hashCode()
Object.equals(java.lang.Object)
,
Hashtable