|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.lang.Package
public class Package
Package
物件包含有關 Java 套件的實作和規範的版本資訊。通過用於載入類別的
實例,可以獲取並獲得此版本資訊。通常,此資訊存儲在與類別一起分發的清單中。
ClassLoader
組成套件的類別集可以實作一個特定規範,如此一來,就可以通過規範標題、版本號和供應商字元串來標識該規範。應用程序可以詢問套件是否與特定版本相容,有關詳細資訊,請參閱
方法。
isCompatibleWith
規範的版本號使用了一個由句點 "." 分隔的十進制正整陣列成的語法,例如 "2.0" 或 "1.2.3.4.5.6.7"。這允許使用可擴展的編號來表示主版本號、次版本號、縮微版本號,等等。版本規範是由下列形式的語法描述的:
- SpecificationVersion:
- Digits RefinedVersionopt
- RefinedVersion:
.
Digits.
Digits RefinedVersion- Digits:
- Digit
- Digits
- Digit:
Character.isDigit(char)
會對其返回true
的任何字元,如 0、1、2 等等。
實作標題、版本和供應商字元串共同標識了一個實作,並且可以很方便地使用它們來支持出現問題時所涉及的套件的準確報告。三個實作字元串內容都是特定於供應商的。實作版本字元串沒有特定的語法,並且應該只在為了使它們等同於所需的版本標識符時對它們進行比較。
在每一個 ClassLoader
實例中,相同 java 套件中的全部類別都有相同的 Package 物件。靜態方法允許通過名稱或當前類別載入器已知的所有套件的集合來找到套件。
ClassLoader.definePackage(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.net.URL)
方法摘要 | ||
---|---|---|
|
getAnnotation(Class<A> annotationClass)
如果存在該元素的指定型別的註釋,則返回這些註釋,否則返回 null。 |
|
Annotation[] |
getAnnotations()
返回此元素上存在的所有註釋。 |
|
Annotation[] |
getDeclaredAnnotations()
返回直接存在於此元素上的所有註釋。 |
|
String |
getImplementationTitle()
返回此套件的標題。 |
|
String |
getImplementationVendor()
返回提供該實作的組織、供應商或公司的名稱。 |
|
String |
getImplementationVersion()
返回該實作的版本。 |
|
String |
getName()
返回此套件的名稱。 |
|
static Package |
getPackage(String name)
通過調用方的 ClassLoader 實例中的名稱找到一個套件。 |
|
static Package[] |
getPackages()
獲得調用方的 ClassLoader 實例當前已知的所有套件。 |
|
String |
getSpecificationTitle()
返回此套件實作的規範標題。 |
|
String |
getSpecificationVendor()
返回擁有並維護實作此套件的類別規範的組織、供應商或公司的名稱。 |
|
String |
getSpecificationVersion()
返回此套件實作的規範的版本號。 |
|
int |
hashCode()
返回從套件名稱計算的雜湊碼。 |
|
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationClass)
如果指定型別的註釋存在於此元素上,則返回 true,否則返回 false。 |
|
boolean |
isCompatibleWith(String desired)
比較此套件的規範版本和所需版本。 |
|
boolean |
isSealed()
如果此套件是密封的,則返回 ture。 |
|
boolean |
isSealed(URL url)
如果此套件對於指定的程式碼源 url 是密封的,則返回 ture。 |
|
String |
toString()
返回此 Package 的字元串表示形式。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
方法詳細資訊 |
---|
public String getName()
public String getSpecificationTitle()
public String getSpecificationVersion()
public String getSpecificationVendor()
public String getImplementationTitle()
public String getImplementationVersion()
public String getImplementationVendor()
public boolean isSealed()
public boolean isSealed(URL url)
url
- 程式碼源 url
public boolean isCompatibleWith(String desired) throws NumberFormatException
通過按順序比較所需字元串和規範字元串的對應元件,對版本號進行比較。每個元件都被轉換為一個十進制整數和比較的值。如果規範值大於所需值,則返回 true。如果小於所需值,則返回 false。如果兩個值相等,則跳過這一比較週期,比較下一對元件。
desired
- 所需版本的版本字元串。
NumberFormatException
- 如果所需版本或當前版本的點形式不正確。public static Package getPackage(String name)
ClassLoader
實例中的名稱找到一個套件。調用方的 ClassLoader
實例用於找到對應於指定類別的套件實例。如果調用方的 ClassLoader
實例為 null,則搜尋系統的 ClassLoader
實例載入的套件集合,以找到指定套件。只有類別載入器創建了具有適當屬性的套件實例,包中才會有規範和版本屬性。通常,這些屬性定義在隨類別一起提供的清單中。
name
- 套件名稱,例如,java.lang。
public static Package[] getPackages()
ClassLoader
實例當前已知的所有套件。這些包對應於通過 ClassLoader
實例中的名稱載入或存取的類別。如果調用方的 ClassLoader
實例是引導程序的 ClassLoader
實例(它在一些實作中可能用 null
表示),則只返回通過引導程序的 ClassLoader
實例載入的類別所對應的套件。
ClassLoader
實例已知的套件的新陣列。如果沒有已知的套件,則返回零長度的陣列。public int hashCode()
Object
中的 hashCode
Object.equals(java.lang.Object)
,
Hashtable
public String toString()
Object
中的 toString
public <A extends Annotation> A getAnnotation(Class<A> annotationClass)
AnnotatedElement
複製的描述
AnnotatedElement
中的 getAnnotation
annotationClass
- 對應於註釋型別的 Class 物件
NullPointerException
- 如果給定的註釋類別為 nullpublic boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
AnnotatedElement
複製的描述
AnnotatedElement
中的 isAnnotationPresent
annotationClass
- 對應於註釋型別的 Class 物件
NullPointerException
- 如果給定的註釋類別為 nullpublic Annotation[] getAnnotations()
AnnotatedElement
複製的描述
AnnotatedElement
中的 getAnnotations
public Annotation[] getDeclaredAnnotations()
AnnotatedElement
複製的描述
AnnotatedElement
中的 getDeclaredAnnotations
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。