Spec-Zone .ru
спецификации, руководства, описания, API
|
public class Package extends Object implements AnnotatedElement
Package
объекты содержат информацию о версии о реализации и спецификации пакета Java. Эта информация об управлении версиями получается и делается доступный ClassLoader
экземпляр, который загрузил class. Как правило, это сохранено в декларации, которая распределяется с классами. Набор классов, которые составляют пакет, может реализовать определенную спецификацию и раз так спецификацию title, номер версии, и строки поставщика идентифицируют ту спецификацию. Приложение может спросить, является ли пакет совместимым с определенной версией, см. isCompatibleWith
метод для деталей.
Номера версий спецификации используют синтаксис, который состоит из неотрицательных десятичных целых чисел, разделенных периодами ".", например "2.0" или "1.2.3.4.5.6.7". Это позволяет расширяемому числу использоваться, чтобы представить главный, незначительный, микро, и т.д. версии. Спецификация версии описывается следующей формальной грамматикой:
- SpecificationVersion:
- Цифры RefinedVersionopt
- RefinedVersion:
.
Цифры.
Цифры RefinedVersion- Цифры:
- Цифра
- Цифры
- Цифра:
- любой символ тот, для который
Character.isDigit(char)
возвратыtrue
, например, 0, 1, 2...
Реализация title, версия, и строки поставщика идентифицируют реализацию и делаются доступными удобно, чтобы включить точному созданию отчетов пакетов, включенных, когда проблема происходит. Содержание все три строки реализации является определенным поставщиком. Строки версии реализации не имеют никакого указанного синтаксиса и должны только быть сравнены для равенства с требуемыми идентификаторами версии.
В пределах каждого ClassLoader
у экземпляра все классы от того же самого пакета java есть тот же самый объект Пакета. Статические методы позволяют пакету быть найденным по имени или набор всех пакетов, которые, как известно текущему загрузчику class, были найдены.
Модификатор и Тип | Метод и Описание |
---|---|
<A extends Annotation> |
getAnnotation(Class<A> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getAnnotations()
Аннотации возвратов, которые присутствуют на этом элементе.
|
<A extends Annotation> |
getAnnotationsByType(Class<A> annotationClass)
Аннотации возвратов, которые присутствуют на этом элементе.
|
<A extends Annotation> |
getDeclaredAnnotation(Class<A> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getDeclaredAnnotations()
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
<A extends Annotation> |
getDeclaredAnnotationsByType(Class<A> annotationClass)
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
Строка |
getImplementationTitle()
Возвратите title этого пакета.
|
Строка |
getImplementationVendor()
Возвращает имя организации, поставщика или компании, которая обеспечила эту реализацию.
|
Строка |
getImplementationVersion()
Возвратите версию этой реализации.
|
Строка |
getName()
Возвратите имя этого пакета.
|
static Package |
getPackage(String name)
Найдите пакет по имени в вызывающих сторонах
ClassLoader экземпляр. |
static Package[] |
getPackages()
Получите все пакеты, в настоящий момент известные вызывающей стороной
ClassLoader экземпляр. |
Строка |
getSpecificationTitle()
Возвратите title спецификации, которую реализует этот пакет.
|
Строка |
getSpecificationVendor()
Возвратите имя организации, поставщика, или компании, которая имеет и поддерживает спецификацию классов, которые реализуют этот пакет.
|
Строка |
getSpecificationVersion()
Возвращает номер версии спецификации, которую реализует этот пакет.
|
int |
hashCode()
Возвратите хэш-код, вычисленный из имени пакета.
|
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationClass)
Возвращает true, если аннотация для указанного типа присутствует на этом элементе, еще ложь.
|
boolean |
isCompatibleWith(String desired)
Сравните версию спецификации этого пакета с требуемой версией.
|
boolean |
isSealed()
Возвращает true, если этот пакет изолируется.
|
boolean |
isSealed(URL url)
Возвращает true, если этот пакет изолируется относительно указанного исходного url кода.
|
Строка |
toString()
Возвращает строковое представление этого Пакета.
|
public String getName()
java.lang
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 требуемого значения возвращается. Если значение менее ложно, возвращается. Если значения равны, период пропускается, и следующая пара компонентов сравнивается.
desired
- строка версии требуемой версии.NumberFormatException
- если требуемая или текущая версия не имеет корректной точечной формы.public static Package getPackage(String name)
ClassLoader
экземпляр. Вызывающие стороны ClassLoader
экземпляр используется, чтобы найти экземпляр пакета, соответствующий именованному class. Если вызывающие стороны ClassLoader
экземпляр является нулем тогда набор пакетов, загруженных системой ClassLoader
экземпляр ищется, чтобы найти именованный пакет. У пакетов есть атрибуты для версий и спецификаций только если загрузчик class, создаваемый экземпляр пакета с соответствующими атрибутами. Как правило, те атрибуты определяются в декларациях, которые сопровождают классы.
name
- имя пакета, например, java.lang.public static Package[] getPackages()
ClassLoader
экземпляр. Те пакеты соответствуют классам, загруженным через или доступный по имени для этого ClassLoader
экземпляр. Если вызывающая сторона ClassLoader
экземпляр является начальной загрузкой ClassLoader
экземпляр, который может быть представлен null
в некоторых реализациях только пакеты, соответствующие классам, загружались начальной загрузкой ClassLoader
экземпляр будет возвращен.ClassLoader
экземпляр. Нулевой массив длины возвращается, если ни один не известен.public int hashCode()
hashCode
в class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
public <A extends Annotation> A getAnnotation(Class<A> annotationClass)
AnnotatedElement
getAnnotation
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
Значение истинности, возвращенное этим методом, эквивалентно: getAnnotation(annotationClass) != null
Тело метода значения по умолчанию определяется, чтобы быть кодом выше.
isAnnotationPresent
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic <A extends Annotation> A[] getAnnotationsByType(Class<A> annotationClass)
AnnotatedElement
AnnotatedElement.getAnnotation(Class)
тот этот метод, обнаруживает, если его параметр является повторимым типом аннотации (JLS 9.6), и если так, пытается найти одну или более аннотаций того типа, "просматривая" контейнерную аннотацию. Вызывающая сторона этого метода свободна изменить возвращенный массив; это не будет иметь никакого эффекта на массивы, возвращенные к другим вызывающим сторонам.getAnnotationsByType
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic Annotation[] getAnnotations()
AnnotatedElement
getAnnotations
в интерфейсе AnnotatedElement
public <A extends Annotation> A getDeclaredAnnotation(Class<A> annotationClass)
AnnotatedElement
getDeclaredAnnotation
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic <A extends Annotation> A[] getDeclaredAnnotationsByType(Class<A> annotationClass)
AnnotatedElement
AnnotatedElement.getDeclaredAnnotation(Class)
тот этот метод, обнаруживает, если его параметр является повторимым типом аннотации (JLS 9.6), и если так, пытается найти одну или более аннотаций того типа, "просматривая" контейнерную аннотацию. Вызывающая сторона этого метода свободна изменить возвращенный массив; это не будет иметь никакого эффекта на массивы, возвращенные к другим вызывающим сторонам.getDeclaredAnnotationsByType
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic Annotation[] getDeclaredAnnotations()
AnnotatedElement
getDeclaredAnnotations
в интерфейсе AnnotatedElement
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92