JavaTM 2 Platform
Standard Ed. 6

java.lang
類別 StackTraceElement

java.lang.Object
  繼承者 java.lang.StackTraceElement
所有已實作的介面:
Serializable

public final class StackTraceElement
extends Object
implements Serializable

堆疊(stack)空間追蹤中的元素,它由 Throwable.getStackTrace() 返回。每個元素表示單獨的一個堆疊(stack)訊框。所有的堆疊(stack)訊框(堆疊(stack)空間頂部的那個堆疊(stack)訊框除外)都表示一個方法調用。堆疊(stack)空間頂部的幀表示產生堆疊(stack)空間追蹤的執行點。通常,這是創建對應於堆疊(stack)空間追蹤的 throwable 的點。

從以下版本開始:
1.4
另請參見:
序列化表格

建構子摘要
StackTraceElement(String declaringClass, String methodName, String fileName, int lineNumber)
          創建表示指定執行點的堆疊(stack)空間追蹤元素。
 
方法摘要
 boolean equals(Object obj)
          如果指定的物件是另一個 StackTraceElement 實例,並且該物件表示的執行點與該實例的相同,則返回 ture。
 String getClassName()
          返回類別的完全限定名,該類別包含由該堆疊(stack)空間追蹤元素所表示的執行點。
 String getFileName()
          返回源檔案名,該檔案包含由該堆疊(stack)空間追蹤元素所表示的執行點。
 int getLineNumber()
          返回源行的行號,該行包含由該堆疊(stack)空間該追蹤元素所表示的執行點。
 String getMethodName()
          返回方法名,此方法包含由該堆疊(stack)空間追蹤元素所表示的執行點。
 int hashCode()
          返回此堆疊(stack)空間追蹤元素的雜湊碼值。
 boolean isNativeMethod()
          如果包含由該堆疊(stack)空間追蹤元素所表示的執行點的方法是一個本機方法,則返回 true。
 String toString()
          返回表示該堆疊(stack)空間追蹤元素的字元串。
 
從類別 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

StackTraceElement

public StackTraceElement(String declaringClass,
                         String methodName,
                         String fileName,
                         int lineNumber)
創建表示指定執行點的堆疊(stack)空間追蹤元素。

參數:
declaringClass - 類別的完全限定名,該類別包含由堆疊(stack)空間追蹤元素所表示的執行點
methodName - 方法名,該方法包含由堆疊(stack)空間追蹤元素所表示的執行點
fileName - 檔案名,該檔案包含由堆疊(stack)空間追蹤元素所表示的執行點;如果該資訊不可用,則該參數為 null
lineNumber - 源程式碼行的行號,該程式碼行包含由堆疊(stack)空間追蹤元素所表示的執行點;如果此資訊不可用,則該參數為負數。值 -2 表示包含執行點的方法是一個本機方法
拋出:
NullPointerException - 如果 declaringClassmethodName 為 null
從以下版本開始:
1.5
方法詳細資訊

getFileName

public String getFileName()
返回源檔案名,該檔案包含由該堆疊(stack)空間追蹤元素所表示的執行點。通常,這對應於相關 class 檔案的 SourceFile 屬性(根據 The Java Virtual Machine Specification 中的第 4.7.7 小節)。在某些系統中,該名稱可能指的是源程式碼單元而不是某個檔案,如源存儲資源庫中的某個項。

返回:
檔案名,該檔案包含由該堆疊(stack)空間追蹤元素所表示的執行點;如果該資訊不可用,則返回 null

getLineNumber

public int getLineNumber()
返回源行的行號,該行包含由該堆疊(stack)空間該追蹤元素所表示的執行點。通常,該方法派生自相關 class 檔案的 LineNumberTable 屬性(根據 The Java Virtual Machine Specification 中的第 4.7.8 小節)。

返回:
源程式碼行的行號,該程式碼行包含由該堆疊(stack)空間追蹤元素所表示的執行點;如果該資訊不可用,則返回負數。

getClassName

public String getClassName()
返回類別的完全限定名,該類別包含由該堆疊(stack)空間追蹤元素所表示的執行點。

返回:
Class 的完全限定名,該類別包含由該堆疊(stack)空間追蹤元素所表示的執行點。

getMethodName

public String getMethodName()
返回方法名,此方法包含由該堆疊(stack)空間追蹤元素所表示的執行點。如果執行點包含在某個實例或類別初始化程序中,則此方法將返回適當的特殊方法名<init><clinit>(根據 The Java Virtual Machine Specification 中的第 3.9 節)。

返回:
方法名,該方法包含由該堆疊(stack)空間追蹤元素所表示的執行點。

isNativeMethod

public boolean isNativeMethod()
如果包含由該堆疊(stack)空間追蹤元素所表示的執行點的方法是一個本機方法,則返回 true。

返回:
如果包含由該堆疊(stack)空間追蹤元素所表示的執行點的方法是一個本機方法,則返回 true

toString

public String toString()
返回表示該堆疊(stack)空間追蹤元素的字元串。該字元串的格式取決於實作,但是可將以下範例格式視為典型的格式:

覆寫:
類別 Object 中的 toString
返回:
該物件的字元串表示形式。
另請參見:
Throwable.printStackTrace()

equals

public boolean equals(Object obj)
如果指定的物件是另一個 StackTraceElement 實例,並且該物件表示的執行點與該實例的相同,則返回 ture。當且僅當滿足下列條件時,堆疊(stack)空間追蹤元素 ab 相同:
     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));
     }
 

覆寫:
類別 Object 中的 equals
參數:
obj - 要與該堆疊(stack)空間追蹤元素相比較的物件。
返回:
如果指定的物件是另一個 StackTraceElement 實例,並且該物件表示的執行點與該實例的相同,則返回 true。
另請參見:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此堆疊(stack)空間追蹤元素的雜湊碼值。

覆寫:
類別 Object 中的 hashCode
返回:
此物件的一個雜湊碼值。
另請參見:
Object.equals(java.lang.Object), Hashtable

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only