Spec-Zone .ru
спецификации, руководства, описания, API
|
T
- тип class смоделирован этим Class
объект. Например, тип String.class
Class<String>
. Использовать Class<?>
если смоделированный class неизвестен.public final class Class<T> extends Object implements Serializable, GenericDeclaration, Type, AnnotatedElement
Class
представьте классы и интерфейсы в рабочем приложении Java. Перечислением является своего рода class, и аннотация является своего рода интерфейсом. Каждый массив также принадлежит class, который отражается как a Class
объект, который совместно используется всеми массивами с тем же самым типом элемента и числом размерностей. Примитивные типы Java (boolean
, byte
, char
, short
, int
, long
, float
, и double
), и ключевое слово void
также представляются как Class
объекты. Class
не имеет никакого общедоступного конструктора. Вместо этого Class
объекты создаются автоматически виртуальной машиной Java, поскольку классы загружаются и звонками defineClass
метод в загрузчике class.
Следующий пример использует a Class
возразите, чтобы напечатать имя class объекта:
void printClassName(Object obj) { System.out.println("The class of " + obj + " is " + obj.getClass().getName()); }
Также возможно добраться Class
объект для именованного типа (или для пустоты) использование литерала class. См. Раздел 15.8.2 из Спецификации языка Java™. Например:
System.out.println("The name of class Foo is: "+Foo.class.getName());
ClassLoader.defineClass(byte[], int, int)
, Сериализированная ФормаМодификатор и Тип | Метод и Описание |
---|---|
<U> Class<? extends U> |
asSubclass(Class<U> clazz)
Броски это
Class объект представить подкласс class, представленного указанным объектом class. |
T |
cast(Object obj)
Бросает объект к class или интерфейсу, представленному этим
Class объект. |
boolean |
desiredAssertionStatus()
Возвращает состояние утверждения, которое было бы присвоено этому class, если это должно было быть инициализировано в то время, когда этот метод вызывается.
|
static Class<?> |
forName(String className)
Возвраты
Class объект, связанный с class или интерфейсом с данным именем строки. |
static Class<?> |
forName(String name, boolean initialize, ClassLoader loader)
Возвраты
Class объект, связанный с class или интерфейсом с данным именем строки, используя данный загрузчик class. |
AnnotatedType[] |
getAnnotatedInterfaces()
Возвращает массив объектов AnnotatedType, которые представляют использование типов, чтобы определить суперинтерфейсы объекта, представленного этим Классом.
|
AnnotatedType |
getAnnotatedSuperclass()
Возвращает объект AnnotatedType, который представляет использование типа, чтобы определить суперкласс объекта, представленного этим Классом.
|
<A extends Annotation> |
getAnnotation(Class<A> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getAnnotations()
Аннотации возвратов, которые присутствуют на этом элементе.
|
<A extends Annotation> |
getAnnotationsByType(Class<A> annotationClass)
Аннотации возвратов, которые присутствуют на этом элементе.
|
Строка |
getCanonicalName()
Возвращает каноническое имя базового class как определено Спецификацией языка Java.
|
Class<?>[] |
getClasses()
Возвращает массив, содержащий
Class объекты, представляющие все общедоступные классы и интерфейсы, которые являются элементами class, представленного этим Class объект. |
ClassLoder |
getClassLoader()
Возвращает загрузчик class для class.
|
Class<?> |
getComponentType()
Возвраты
Class представление компонентного типа массива. |
Constructor<T> |
getConstructor(Class<?>... parameterTypes)
Возвраты a
Constructor объект, который отражает указанного общедоступного конструктора class, представленного этим Class объект. |
Constructor<?>[] |
getConstructors()
Возвращает массив, содержащий
Constructor объекты, отражающие всех общедоступных конструкторов class, представляются этим Class объект. |
<A extends Annotation> |
getDeclaredAnnotation(Class<A> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getDeclaredAnnotations()
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
<A extends Annotation> |
getDeclaredAnnotationsByType(Class<A> annotationClass)
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
Class<?>[] |
getDeclaredClasses()
Возвращает массив
Class объекты, отражающие все классы и интерфейсы, объявленные как элементы class, представляются этим Class объект. |
Constructor<T> |
getDeclaredConstructor(Class<?>... parameterTypes)
Возвраты a
Constructor объект, который отражает указанного конструктора class или интерфейса, представленного этим Class объект. |
Constructor<?>[] |
getDeclaredConstructors()
Возвращает массив
Constructor объекты, отражающие всех конструкторов, объявленных class, представляются этим Class объект. |
Поле |
getDeclaredField(String name)
Возвраты a
Field объект, который отражает указанное объявленное поле class или интерфейса, представленного этим Class объект. |
Поле[] |
getDeclaredFields()
Возвращает массив
Field объекты, отражающие все поля, объявленные class или интерфейсом, представляются этим Class объект. |
Метод |
getDeclaredMethod(String name, Class<?>... parameterTypes)
Возвраты a
Method объект, который отражает указанный объявленный метод class или интерфейса, представленного этим Class объект. |
Метод[] |
getDeclaredMethods()
Возвращает массив
Method объекты, отражающие все методы, объявленные class или интерфейсом, представляются этим Class объект. |
Class<?> |
getDeclaringClass()
Если class или интерфейс представляются этим
Class объект является элементом другого class, возвраты Class объект, представляющий class, в котором это было объявлено. |
Class<?> |
getEnclosingClass()
Возвращает сразу включение class базового class.
|
Constructor<?> |
getEnclosingConstructor()
Если это
Class объект представляет локальный или анонимный class в пределах конструктора, a возвратов Constructor объект, представляющий сразу конструктора включения базового class. |
Метод |
getEnclosingMethod()
Если это
Class объект представляет локальный или анонимный class в пределах метода, a возвратов Method объект, представляющий сразу метод включения базового class. |
T[] |
getEnumConstants()
Возвращает элементы этого перечислимого class или нуля, если этот объект Класса не представляет перечислимый тип.
|
Поле |
getField(String name)
Возвраты a
Field объект, который отражает указанное общедоступное задействованное поле class или интерфейса, представленного этим Class объект. |
Поле[] |
getFields()
Возвращает массив, содержащий
Field объекты, отражающие все доступные общедоступные поля class или интерфейса, представляются этим Class объект. |
Ввести[] |
getGenericInterfaces()
Возвраты
Type s представление интерфейсов, непосредственно реализованных class или интерфейсом, представляется этим объектом. |
Ввести |
getGenericSuperclass()
Возвраты
Type представляя прямой суперкласс объекта (class, интерфейс, тип примитива или пусто) представленный этим Class . |
Class<?>[] |
getInterfaces()
Определяет интерфейсы, реализованные class или интерфейсом, представленным этим объектом.
|
Метод |
getMethod(String name, Class<?>... parameterTypes)
Возвраты a
Method объект, который отражает указанный общедоступный задействованный метод class или интерфейса, представленного этим Class объект. |
Метод[] |
getMethods()
Возвращает массив, содержащий
Method объекты, отражающие все общедоступные задействованные методы class или интерфейса, представляются этим Class объект, включая объявленных class или интерфейсом и наследованными от суперклассов и суперинтерфейсов. |
int |
getModifiers()
Возвращает модификаторы языка Java для этого class или интерфейса, закодированного в целом числе.
|
Строка |
getName()
Возвращает имя объекта (class, интерфейс, массив class, тип примитива, или пусто) представленный этим
Class объект, как a String . |
Пакет |
getPackage()
Получает пакет для этого class.
|
ProtectionDomain |
getProtectionDomain()
Возвраты
ProtectionDomain из этого class. |
URL |
getResource(String name)
Находит ресурс с именем.
|
InputStream |
getResourceAsStream(String name)
Находит ресурс с именем.
|
Объект[] |
getSigners()
Получает подписывающие лица этого class.
|
Строка |
getSimpleName()
Возвращает простое имя базового class как дано в исходном коде.
|
Class<? super T> |
getSuperclass()
Возвраты
Class представляя суперкласс объекта (class, интерфейс, тип примитива или пусто) представленный этим Class . |
Строка |
getTypeName()
Возвратите информативную строку для имени этого типа.
|
TypeVariable<Class<T>>[] |
getTypeParameters()
Возвращает массив
TypeVariable объекты, которые представляют переменные типа, объявленные универсальным объявлением, представленным этим GenericDeclaration объект, в порядке объявления. |
boolean |
isAnnotation()
Возвращает true если это
Class объект представляет тип аннотации. |
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationClass)
Возвращает true, если аннотация для указанного типа присутствует на этом элементе, еще ложь.
|
boolean |
isAnonymousClass()
Возвраты
true если и только если базовым class является анонимный class. |
boolean |
isArray()
Определяет если это
Class объект представляет массив class. |
boolean |
isAssignableFrom(Class<?> cls)
Определяет если class или интерфейс, представленный этим
Class объект является или тем же самым как, или является суперклассом или суперинтерфейсом, class или интерфейс, представленный указанным Class параметр. |
boolean |
isEnum()
Возвращает true, если и только если этот class был объявлен как перечисление в исходном коде.
|
boolean |
isInstance(Object obj)
Определяет если указанное
Object является совместимым с присвоением с объектом, представленным этим Class . |
boolean |
isInterface()
Определяет если указанное
Class объект представляет тип интерфейса. |
boolean |
isLocalClass()
Возвраты
true если и только если базовым class является локальный class. |
boolean |
isMemberClass()
Возвраты
true если и только если базовый class является элементом class. |
boolean |
isPrimitive()
Определяет если указанное
Class объект представляет тип примитива. |
boolean |
isSynthetic()
Возвраты
true если этим class является синтетический class; возвраты false иначе. |
T |
newInstance()
Создает новый экземпляр class, представленного этим
Class объект. |
Строка |
toGenericString()
Возвращает строку, описывающую это
Class , включая информацию о модификаторах и параметрах типа. |
Строка |
toString()
Преобразовывает объект в строку.
|
public String toString()
getName
. Если это Class
объект представляет тип примитива, этот метод возвращает имя типа примитива. Если это Class
объект представляет пусто этот метод возвраты "пусто".public String toGenericString()
Class
, включая информацию о модификаторах и параметрах типа. Строка форматируется как список модификаторов типа, если таковые вообще имеются, сопровождается видом типа (пустая строка для типов примитивов и class
, enum
, interface
, или @interface
, как соответствующий), сопровождаемый именем типа, сопровождаемым заключенным в скобки углом списком разделенных запятой значений параметров типа типа, если любой. Пространство используется, чтобы разделить модификаторы от друг друга и разделить любые модификаторы от вида типа. Модификаторы происходят в каноническом порядке. Если нет никаких параметров типа, список параметров типа игнорируется. Отметьте, что, так как информация о представлении времени выполнения типа сгенерирована, модификаторы не, подарок на инициирующем исходном коде или недопустимый на инициирующем исходном коде может присутствовать.
Class
, включая информацию о модификаторах и параметрах типаpublic static Class<?> forName(String className) throws ClassNotFoundException
Class
объект, связанный с class или интерфейсом с данным именем строки. Вызов этого метода эквивалентен:
Class.forName(className, true, currentLoader)
где currentLoader
обозначает определение загрузчик class текущего class. Например, следующий фрагмент кода возвращает время выполнения Class
дескриптор для class называют java.lang.Thread
:
Class t = Class.forName("java.lang.Thread")
Звонок forName("X")
вызывает названный class X
быть инициализированным.
className
- полностью определенное имя требуемого class.Class
объект для class с указанным именем.LinkageError
- если редактирование перестало работатьExceptionInInitializerError
- если инициализация вызывается этим методом сбоиClassNotFoundException
- если class не может быть расположенpublic static Class<?> forName(String name, boolean initialize, ClassLoader loader) throws ClassNotFoundException
Class
объект, связанный с class или интерфейсом с данным именем строки, используя данный загрузчик class. Учитывая полностью определенное имя для class или интерфейса (в том же самом формате, возвращенном getName
) этот метод пытается определить местоположение, загрузить, и соединить class или интерфейс. Указанный загрузчик class используется, чтобы загрузить class или интерфейс. Если параметр loader
нуль, class загружается посредством начальной загрузки загрузчик class. class инициализируется только если initialize
параметр true
и если это не было инициализировано ранее. Если name
обозначает тип примитива или пусто, попытка будет предпринята, чтобы определить местоположение определяемого пользователем class в неназванном пакете, имя которого name
. Поэтому, этот метод не может использоваться, чтобы получить любой из Class
объекты, представляющие типы примитивов или пусто.
Если name
обозначает массив class, компонентный тип массива, class загружается, но не инициализируется.
Например, в методе экземпляра выражение:
Class.forName("Foo")
эквивалентно:
Class.forName("Foo", true, this.getClass().getClassLoader())
Отметьте, что этот метод бросает ошибки, связанные с загрузкой, соединением или инициализацией как определено в Разделах 12.2, 12.3 и 12.4 из Спецификации языка Java. Отметьте, что этот метод не проверяет, доступен ли требуемый class для своей вызывающей стороны. Если loader
null
, и менеджер безопасности присутствует, и загрузчик class вызывающей стороны не является нулем, тогда это вызовы метода менеджер безопасности checkPermission
метод с a RuntimePermission("getClassLoader")
разрешение, чтобы гарантировать нормально получать доступ к начальной загрузке загрузчик class.
name
- полностью определенное имя требуемого classinitialize
- если true
class будет инициализирован. См. Раздел 12.4 из Спецификации языка Java.loader
- загрузчик class, из которого должен быть загружен classLinkageError
- если редактирование перестало работатьExceptionInInitializerError
- если инициализация вызывается этим методом сбоиClassNotFoundException
- если class не может быть расположен указанным загрузчиком classforName(String)
, ClassLoader
public T newInstance() throws InstantiationException, IllegalAccessException
Class
объект. class инстанцируют как будто a new
выражение с пустым списком параметров. class инициализируется, если он не был уже инициализирован. Отметьте, что этот метод распространяет любое исключение, выданное nullary конструктором, включая проверенное исключение. Использование этого метода эффективно обходит исключение времени компиляции, проверяющее, что это было бы иначе выполнено компилятором. Constructor.newInstance
метод избегает этой проблемы, обертывая любое исключение, выданное конструктором в (проверенном) InvocationTargetException
.
IllegalAccessException
- если class или его nullary конструктор не доступны.InstantiationException
- если это Class
представляет абстрактный class, интерфейс, массив class, тип примитива, или пусто; или если у class нет никакого nullary конструктора; или если инстанцирование перестало работать по некоторой другой причине.ExceptionInInitializerError
- если инициализация вызывается этим методом сбои.SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
отрицает создание новых экземпляров этого class s.checkPackageAccess()
лишает доступа к пакету этого class public boolean isInstance(Object obj)
Object
является совместимым с присвоением с объектом, представленным этим Class
. Этот метод является динамическим эквивалентом языка Java instanceof
оператор. Возвраты метода true
если указанное Object
параметр является ненулем и может быть брошен к ссылочному типу, представленному этим Class
объект, не повышая a ClassCastException.
Это возвращается false
иначе. Определенно, если это Class
объект представляет объявленный class, этот метод возвраты true
если указанное Object
параметром является экземпляр представленного class (или любого из его подклассов); это возвращается false
иначе. Если это Class
объект представляет массив class, этот метод возвраты true
если указанное Object
параметр может быть преобразован в объект массива class преобразованием идентификационных данных или расширяющимся ссылочным преобразованием; это возвращается false
иначе. Если это Class
объект представляет интерфейс, этот метод возвраты true
если class или любой суперкласс указанного Object
параметр реализует этот интерфейс; это возвращается false
иначе. Если это Class
объект представляет тип примитива, этот метод возвраты false
.
obj
- объект проверитьobj
экземпляр этого classpublic boolean isAssignableFrom(Class<?> cls)
Class
объект является или тем же самым как, или является суперклассом или суперинтерфейсом, class или интерфейс, представленный указанным Class
параметр. Это возвращается true
раз так; иначе это возвращается false
. Если это Class
объект представляет тип примитива, этот метод возвраты true
если указанное Class
параметр - точно это Class
объект; иначе это возвращается false
. Определенно, этот метод тестирует ли тип, представленный указанным Class
параметр может быть преобразован в тип, представленный этим Class
объект через преобразование идентификационных данных или через расширяющееся ссылочное преобразование. См. Спецификацию языка Java, разделы 5.1.1 и 5.1.4, для деталей.
cls
- Class
объект, который будет проверенboolean
значение, указывающее, ли объекты типа cls
может быть присвоен объектам этого classNullPointerException
- если указанный параметр Класса является нулем.public boolean isInterface()
Class
объект представляет тип интерфейса.true
если этот объект представляет интерфейс; false
иначе.public boolean isArray()
Class
объект представляет массив class.true
если этот объект представляет массив class; false
иначе.public boolean isPrimitive()
Class
объект представляет тип примитива. Есть девять предопределены Class
объекты представить эти восемь типов примитивов и пусто. Они создаются виртуальной машиной Java, и имеют те же самые имена как типы примитивов, которые они представляют, а именно, boolean
, byte
, char
, short
, int
, long
, float
, и double
.
К этим объектам можно только получить доступ через следующие общедоступные статические заключительные переменные, и являются единственным Class
объекты, для которых возвращается этот метод true
.
Boolean.TYPE
, Character.TYPE
, Byte.TYPE
, Short.TYPE
, Integer.TYPE
, Long.TYPE
, Float.TYPE
, Double.TYPE
, Void.TYPE
public boolean isAnnotation()
Class
объект представляет тип аннотации. Отметьте это, если этот метод возвращает true, isInterface()
также возвратил бы true, поскольку все типы аннотации являются также интерфейсами.true
если этот объект class представляет тип аннотации; false
иначеpublic boolean isSynthetic()
true
если этим class является синтетический class; возвраты false
иначе.true
если и только если этим class является синтетический class как определено Спецификацией языка Java.public String getName()
Class
объект, как a String
. Если этот объект class представляет ссылочный тип, который не является типом массива тогда, двоичное имя class возвращается, как определено Спецификацией языка Java™.
Если этот объект class представляет тип примитива или пусто, то возвращенное имя является a String
равный ключевому слову языка Java, соответствующему типу примитива или пусто.
Если этот объект class представляет class массивов, то внутренняя форма имени состоит из имени типа элемента, которому предшествуют один или более'[
'символы, представляющие глубину вложения массива. Кодирование имен типов элемента следующие:
Тип элемента Кодирование булев Z байт B случайная работа C class или интерфейс Lclassname; двойной D плавание F интервал Я долго J короткий S
Имя класса имени class или интерфейса является двоичным именем class, определенного выше.
Примеры:
String.class.getName() returns "java.lang.String" byte.class.getName() returns "byte" (new Object[3]).getClass().getName() returns "[Ljava.lang.Object;" (new int[3][4][5][6][7][8][9]).getClass().getName() returns "[[[[[[[I"
public ClassLoader getClassLoader()
Если менеджер безопасности присутствует, и загрузчик class вызывающей стороны не является нулем, и загрузчик class вызывающей стороны не является тем же самым как или предок загрузчика class для class, загрузчик class которого требуют, то это вызовы метода менеджер безопасности checkPermission
метод с a RuntimePermission("getClassLoader")
разрешение, чтобы гарантировать нормально получать доступ к загрузчику class для class.
Если этот объект представляет тип примитива или пусто, нуль возвращается.
SecurityException
- если менеджер безопасности существует и checkPermission
метод лишает доступа к загрузчику class для class.ClassLoader
, SecurityManager.checkPermission(java.security.Permission)
, RuntimePermission
public TypeVariable<Class<T>>[] getTypeParameters()
TypeVariable
объекты, которые представляют переменные типа, объявленные универсальным объявлением, представленным этим GenericDeclaration
объект, в порядке объявления. Возвращает массив длины 0, если базовое универсальное объявление не объявляет переменных типа.getTypeParameters
в интерфейсе GenericDeclaration
TypeVariable
объекты, которые представляют переменные типа, объявленные этим универсальным объявлениемGenericSignatureFormatError
- если универсальная подпись этого универсального объявления не соответствует формату, определенному в Спецификации Виртуальной машины Java™public Class<? super T> getSuperclass()
Class
представляя суперкласс объекта (class, интерфейс, тип примитива или пусто) представленный этим Class
. Если это Class
представляет любого Object
class, интерфейс, тип примитива, или пусто, тогда нуль возвращаются. Если этот объект представляет массив class тогда Class
объект, представляющий Object
class возвращается.public Type getGenericSuperclass()
Type
представляя прямой суперкласс объекта (class, интерфейс, тип примитива или пусто) представленный этим Class
. Если суперкласс является параметризованным типом, Type
возвращенный объект должен точно отразить фактические параметры типа, используемые в исходном коде. Параметризованный тип, представляющий суперкласс, создается, если это не было создано прежде. См. объявление ParameterizedType
поскольку семантика создания обрабатывает для параметризованных типов. Если это Class
представляет любого Object
class, интерфейс, тип примитива, или пусто, тогда нуль возвращаются. Если этот объект представляет массив class тогда Class
объект, представляющий Object
class возвращается.
GenericSignatureFormatError
- если универсальная подпись class не соответствует формату, определенному в Спецификации Виртуальной машины Java™TypeNotPresentException
- если универсальный суперкласс ссылается на несуществующее описание типаMalformedParameterizedTypeException
- если универсальный суперкласс обращается к параметризованному типу, который нельзя инстанцировать ни по какой причинеpublic Package getPackage()
У пакетов есть атрибуты для версий и спецификаций, только если информация была определена в декларациях, которые сопровождают классы, и если загрузчик class, создаваемый экземпляр пакета с атрибутами из декларации.
public Class<?>[] getInterfaces()
Если этот объект представляет class, возвращаемое значение является массивом, содержащим объекты, представляющие все интерфейсы, реализованные class. Порядок объектов интерфейса в массиве соответствует порядку имен интерфейса в implements
пункт объявления class представляется этим объектом. Например, учитывая объявление:
class Shimmer implements FloorWax, DessertTopping { ... }
предположите значение s
экземпляр Shimmer
; значение выражения:
s.getClass().getInterfaces()[0]
Class
объект, который представляет интерфейс FloorWax
; и значение:
s.getClass().getInterfaces()[1]
Class
объект, который представляет интерфейс DessertTopping
. Если этот объект представляет интерфейс, массив содержит объекты, представляющие все интерфейсы, расширенные интерфейсом. Порядок объектов интерфейса в массиве соответствует порядку имен интерфейса в extends
пункт объявления интерфейса представляется этим объектом.
Если этот объект представляет class, или взаимодействуйте через интерфейс, который не реализует интерфейсов, метод возвращает массив длины 0.
Если этот объект представляет тип примитива или пусто, метод возвращает массив длины 0.
public Type[] getGenericInterfaces()
Type
s представление интерфейсов, непосредственно реализованных class или интерфейсом, представляется этим объектом. Если суперинтерфейс является параметризованным типом, Type
объект, возвращенный для этого, должен точно отразить фактические параметры типа, используемые в исходном коде. Параметризованный тип, представляющий каждый суперинтерфейс, создается, если это не было создано прежде. См. объявление ParameterizedType
поскольку семантика создания обрабатывает для параметризованных типов.
Если этот объект представляет class, возвращаемое значение является массивом, содержащим объекты, представляющие все интерфейсы, реализованные class. Порядок объектов интерфейса в массиве соответствует порядку имен интерфейса в implements
пункт объявления class представляется этим объектом. В случае массива class, интерфейсы Cloneable
и Serializable
возвращаются в том порядке.
Если этот объект представляет интерфейс, массив содержит объекты, представляющие все интерфейсы, непосредственно расширенные интерфейсом. Порядок объектов интерфейса в массиве соответствует порядку имен интерфейса в extends
пункт объявления интерфейса представляется этим объектом.
Если этот объект представляет class, или взаимодействуйте через интерфейс, который не реализует интерфейсов, метод возвращает массив длины 0.
Если этот объект представляет тип примитива или пусто, метод возвращает массив длины 0.
GenericSignatureFormatError
- если универсальная подпись class не соответствует формату, определенному в Спецификации Виртуальной машины Java™TypeNotPresentException
- если какой-либо из универсальных суперинтерфейсов ссылается на несуществующее описание типаMalformedParameterizedTypeException
- если какой-либо из универсальных суперинтерфейсов обращается к параметризованному типу, который нельзя инстанцировать ни по какой причинеpublic Class<?> getComponentType()
Class
представление компонентного типа массива. Если этот class не представляет массив class этот нуль возвратов метода.Class
представление компонентного типа этого class, если этот class является массивомArray
public int getModifiers()
public
, protected
, private
, final
, static
, abstract
и interface
; они должны декодироваться, используя методы class Modifier
. Если базовый class является массивом class, то public
, private
и protected
модификаторы являются тем же самым как таковыми из его компонентного типа. Если это Class
представляет тип примитива или пусто, public
модификатор всегда true
, и protected
и private
модификаторы всегда false
. Если этот объект представляет массив class, тип примитива или пусто, то final
модификатор всегда true
и его модификатор интерфейса всегда false
. Значения его других модификаторов не определяются этой спецификацией.
Кодировки модификатора определяются в Спецификации виртуальной машины Java, таблице 4.1.
int
представление модификаторов для этого classModifier
public Object[] getSigners()
public Method getEnclosingMethod()
Class
объект представляет локальный или анонимный class в пределах метода, a возвратов Method
объект, представляющий сразу метод включения базового class. Возвраты null
иначе. В частности этот метод возвраты null
если базовым class является локальный или анонимный class, сразу включенный описанием типа, инициализатором экземпляра или статическим инициализатором.null
.public Constructor<?> getEnclosingConstructor()
Class
объект представляет локальный или анонимный class в пределах конструктора, a возвратов Constructor
объект, представляющий сразу конструктора включения базового class. Возвраты null
иначе. В частности этот метод возвраты null
если базовым class является локальный или анонимный class, сразу включенный описанием типа, инициализатором экземпляра или статическим инициализатором.null
.public Class<?> getDeclaringClass()
Class
объект является элементом другого class, возвраты Class
объект, представляющий class, в котором это было объявлено. Этот метод возвращает нуль, если этот class или интерфейс не являются элементом какого-либо другого class. Если это Class
объект представляет массив class, тип примитива, или пусто, тогда этот нуль возвратов метода.public Class<?> getEnclosingClass()
null
.public String getSimpleName()
Простое имя массива является простым именем компонентного типа с" []" добавленный. В особенности простое имя массива, компонентный тип которого является анонимным," []".
public String getTypeName()
getTypeName
в интерфейсе Type
public String getCanonicalName()
null
иначе.public boolean isAnonymousClass()
true
если и только если базовым class является анонимный class.true
если и только если этим class является анонимный class.public boolean isLocalClass()
true
если и только если базовым class является локальный class.true
если и только если этим class является локальный class.public boolean isMemberClass()
true
если и только если базовый class является элементом class.true
если и только если этот class является элементом class.public Class<?>[] getClasses()
Class
объекты, представляющие все общедоступные классы и интерфейсы, которые являются элементами class, представленного этим Class
объект. Это включает общедоступный class и элементы интерфейса, наследованные от суперклассов и общедоступного class и элементов интерфейса, объявленных class. Этот метод возвращает массив длины 0 если это Class
у объекта нет никаких общедоступных задействованных классов или интерфейсов. Этот метод также возвращает массив длины 0 если это Class
объект представляет тип примитива, массив class, или пусто.Class
объекты, представляющие общедоступные элементы этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
метод лишает доступа к классам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Field[] getFields() throws SecurityException
Field
объекты, отражающие все доступные общедоступные поля class или интерфейса, представляются этим Class
объект. Элементы в возвращенном массиве не сортируются и не находятся ни в каком определенном порядке. Этот метод возвращает массив длины 0, если у class или интерфейса нет никаких доступных общедоступных полей, или если это представляет массив class, тип примитива, или пусто. Определенно, если это Class
объект представляет class, этот метод возвращает общедоступные поля этого class и всех его суперклассов. Если это Class
объект представляет интерфейс, этот метод возвращает поля этого интерфейса и всех его суперинтерфейсов.
Неявное поле длины для массива class не отражается этим методом. Пользовательский код должен использовать методы class Array
управлять массивами.
См. Спецификацию языка Java, разделы 8.2 и 8.3.
Field
объекты, представляющие общедоступные поляSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа к полям в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Method[] getMethods() throws SecurityException
Method
объекты, отражающие все общедоступные задействованные методы class или интерфейса, представляются этим Class
объект, включая объявленных class или интерфейсом и наследованными от суперклассов и суперинтерфейсов. Классы массива возвращают все (общедоступные) задействованные методы, наследованные из Object
class. Элементы в возвращенном массиве не сортируются и не находятся ни в каком определенном порядке. Этот метод возвращает массив длины 0 если это Class
объект представляет class, или взаимодействуйте через интерфейс, у которого нет никаких общедоступных задействованных методов, или если это Class
объект представляет тип примитива или пусто. Метод инициализации class <clinit>
не включается в возвращенный массив. Если class объявляет многократные общедоступные задействованные методы с теми же самыми типами параметра, они все включаются в возвращенный массив.
См. Спецификацию языка Java, разделы 8.2 и 8.4.
Method
объекты, представляющие открытые методы этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа к методам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Constructor<?>[] getConstructors() throws SecurityException
Constructor
объекты, отражающие всех общедоступных конструкторов class, представляются этим Class
объект. Массив длины 0 возвращается, если у class нет никаких общедоступных конструкторов, или если class является массивом class, или если class отражает тип примитива или пусто. Отметьте это, в то время как этот метод возвращает массив Constructor<T>
объекты (который является массивом конструкторов от этого class), тип возврата этого метода Constructor<?>[]
и нет Constructor<T>[]
как мог бы ожидаться. Этот менее информативный тип возврата необходим, так как, будучи возвращенным из этого метода, массив мог быть изменен, чтобы содержать Constructor
объекты для различных классов, которые нарушили бы гарантии типа Constructor<T>[]
.Constructor
объекты, представляющие общедоступных конструкторов этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа конструкторам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Field getField(String name) throws NoSuchFieldException, SecurityException
Field
объект, который отражает указанное общедоступное задействованное поле class или интерфейса, представленного этим Class
объект. name
параметр является a String
определение простого имени требуемого поля. Поле, которое будет отражено, определяется алгоритмом, который следует. Позвольте C быть class, представленным этим объектом:
NoSuchFieldException
бросается.См. Спецификацию языка Java, разделы 8.2 и 8.3.
name
- имя поляField
объект этого class, определенного name
NoSuchFieldException
- если поле с указанным именем не находится.NullPointerException
- если name
null
SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа к полю s.checkPackageAccess()
лишает доступа к пакету этого class public Method getMethod(String name, Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException
Method
объект, который отражает указанный общедоступный задействованный метод class или интерфейса, представленного этим Class
объект. name
параметр является a String
определение простого имени требуемого метода. parameterTypes
параметр является массивом Class
объекты, которые идентифицируют типы формального параметра метода в объявленном порядке. Если parameterTypes
null
, это обрабатывается, как будто это был пустой массив. Если name
"<init>
; "или"<clinit>
"a NoSuchMethodException
повышается. Иначе, метод, который будет отражен, определяется алгоритмом, который следует. Позвольте C быть class, представленным этим объектом:
Отметьте, что может быть больше чем один соответствующий метод в class, потому что, в то время как язык Java запрещает class объявлять многократные методы с той же самой подписью, но различными типами возврата, виртуальная машина Java не делает. Эта увеличенная гибкость в виртуальной машине может использоваться, чтобы реализовать различные опции языка. Например, ковариантные возвраты могут быть реализованы с мостовыми методами; у мостового метода и переопределяемого метода была бы та же самая подпись, но различные типы возврата.
См. Спецификацию языка Java, разделы 8.2 и 8.4.
name
- имя методаparameterTypes
- список параметровMethod
возразите, что соответствует указанное name
и parameterTypes
NoSuchMethodException
- если соответствующий метод не находится или если имя" <init> "или" <clinit>".NullPointerException
- если name
null
SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа к методу s.checkPackageAccess()
лишает доступа к пакету этого class public Constructor<T> getConstructor(Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException
Constructor
объект, который отражает указанного общедоступного конструктора class, представленного этим Class
объект. parameterTypes
параметр является массивом Class
объекты, которые идентифицируют типы формального параметра конструктора в объявленном порядке. Если это Class
объект представляет внутренний class, объявленный в нестатическом контексте, типы формального параметра включают явный экземпляр включения как первый параметр. Конструктор, чтобы отразиться является общедоступным конструктором class, представленного этим Class
возразите, чьи типы формального параметра соответствуют определенных parameterTypes
.
parameterTypes
- массив параметраConstructor
объект общедоступного конструктора, который соответствует указанное parameterTypes
NoSuchMethodException
- если соответствующий метод не находится.SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.PUBLIC)
лишает доступа конструктору s.checkPackageAccess()
лишает доступа к пакету этого class public Class<?>[] getDeclaredClasses() throws SecurityException
Class
объекты, отражающие все классы и интерфейсы, объявленные как элементы class, представляются этим Class
объект. Это включает общественность, защищенную, значение по умолчанию (пакет) доступ, и частные классы и интерфейсы, объявленные class, но исключает наследованные классы и интерфейсы. Этот метод возвращает массив длины 0, если class не объявляет классов или взаимодействует через интерфейс как элементы, или если это Class
объект представляет тип примитива, массив class, или пусто.Class
объекты, представляющие все объявленные элементы этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа к объявленным классам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Field[] getDeclaredFields() throws SecurityException
Field
объекты, отражающие все поля, объявленные class или интерфейсом, представляются этим Class
объект. Это включает общественность, защищенную, значение по умолчанию (пакет) доступ, и частные поля, но исключает наследованные поля. Элементы в возвращенном массиве не сортируются и не находятся ни в каком определенном порядке. Этот метод возвращает массив длины 0, если class или интерфейс не объявляют полей, или если это Class
объект представляет тип примитива, массив class, или пусто. См. Спецификацию языка Java, разделы 8.2 и 8.3.
Field
объекты, представляющие все объявленные поля этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа к объявленным полям в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Method[] getDeclaredMethods() throws SecurityException
Method
объекты, отражающие все методы, объявленные class или интерфейсом, представляются этим Class
объект. Это включает общественность, защищенную, значение по умолчанию (пакет) доступ, и закрытые методы, но исключает наследованные методы. Элементы в возвращенном массиве не сортируются и не находятся ни в каком определенном порядке. Этот метод возвращает массив длины 0, если class или интерфейс не объявляют методов, или если это Class
объект представляет тип примитива, массив class, или пусто. Метод инициализации class <clinit>
не включается в возвращенный массив. Если class объявляет многократные общедоступные задействованные методы с теми же самыми типами параметра, они все включаются в возвращенный массив. См. Спецификацию языка Java, раздел 8.2.
Method
объекты, представляющие все объявленные методы этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа к объявленным методам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Constructor<?>[] getDeclaredConstructors() throws SecurityException
Constructor
объекты, отражающие всех конструкторов, объявленных class, представляются этим Class
объект. Они общедоступны, защищаются, значение по умолчанию (пакет) доступ, и частные конструкторы. Элементы в возвращенном массиве не сортируются и не находятся ни в каком определенном порядке. Если у class есть конструктор по умолчанию, он включается в возвращенный массив. Этот метод возвращает массив длины 0 если это Class
объект представляет интерфейс, тип примитива, массив class, или пусто. См. Спецификацию языка Java, раздел 8.2.
Constructor
объекты, представляющие всех объявленных конструкторов этого classSecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа объявленным конструкторам в пределах этого class s.checkPackageAccess()
лишает доступа к пакету этого class public Field getDeclaredField(String name) throws NoSuchFieldException, SecurityException
Field
объект, который отражает указанное объявленное поле class или интерфейса, представленного этим Class
объект. name
параметр является a String
это определяет простое имя требуемого поля. Отметьте, что этот метод не будет отражаться length
поле массива class.name
- имя поляField
объект для указанного поля в этом classNoSuchFieldException
- если поле с указанным именем не находится.NullPointerException
- если name
null
SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа к объявленному полю s.checkPackageAccess()
лишает доступа к пакету этого class public Method getDeclaredMethod(String name, Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException
Method
объект, который отражает указанный объявленный метод class или интерфейса, представленного этим Class
объект. name
параметр является a String
это определяет простое имя требуемого метода, и parameterTypes
параметр является массивом Class
объекты, которые идентифицируют типы формального параметра метода в объявленном порядке. Если больше чем один метод с теми же самыми типами параметра объявляется в class, и у одного из этих методов есть тип возврата, который является более определенным чем любые из других, тот метод возвращается; иначе один из методов выбирается произвольно. Если имя" <init> "или" <clinit>" a NoSuchMethodException
повышается.name
- имя методаparameterTypes
- массив параметраMethod
объект для метода этого class, соответствующего указанное имя и параметрыNoSuchMethodException
- если соответствующий метод не находится.NullPointerException
- если name
null
SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа к объявленному методу s.checkPackageAccess()
лишает доступа к пакету этого class public Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes) throws NoSuchMethodException, SecurityException
Constructor
объект, который отражает указанного конструктора class или интерфейса, представленного этим Class
объект. parameterTypes
параметр является массивом Class
объекты, которые идентифицируют типы формального параметра конструктора в объявленном порядке. Если это Class
объект представляет внутренний class, объявленный в нестатическом контексте, типы формального параметра включают явный экземпляр включения как первый параметр.parameterTypes
- массив параметраConstructor
объект для конструктора с указанным списком параметровNoSuchMethodException
- если соответствующий метод не находится.SecurityException
- Если менеджер безопасности, s, присутствует, и любое из следующих условий встречается: s.checkMemberAccess(this, Member.DECLARED)
лишает доступа объявленному конструктору s.checkPackageAccess()
лишает доступа к пакету этого class public InputStream getResourceAsStream(String name)
ClassLoader.getSystemResourceAsStream(java.lang.String)
. Перед делегацией абсолютное имя ресурса создается из данного имени ресурса, используя этот алгоритм:
name
начинается с a '/'
('\u002f'), тогда абсолютное имя ресурса является частью name
после '/'
.
modified_package_name/name
Где modified_package_name
имя пакета этого объекта с '/'
замененный '.'
('\u002e').
name
- имя требуемого ресурсаInputStream
объект или null
если никакой ресурс с этим именем не находитсяNullPointerException
- Если name
null
public URL getResource(String name)
ClassLoader.getSystemResource(java.lang.String)
. Перед делегацией абсолютное имя ресурса создается из данного имени ресурса, используя этот алгоритм:
name
начинается с a '/'
('\u002f'), тогда абсолютное имя ресурса является частью name
после '/'
.
modified_package_name/name
Где modified_package_name
имя пакета этого объекта с '/'
замененный '.'
('\u002e').
name
- имя требуемого ресурсаURL
объект или null
если никакой ресурс с этим именем не находитсяpublic ProtectionDomain getProtectionDomain()
ProtectionDomain
из этого class. Если есть установленный менеджер безопасности, этот метод первые вызовы менеджер безопасности checkPermission
метод с a RuntimePermission("getProtectionDomain")
разрешение, чтобы гарантировать нормально добираться ProtectionDomain
.SecurityException
- если менеджер безопасности существует и checkPermission
метод не позволяет получать ProtectionDomain.ProtectionDomain
, SecurityManager.checkPermission(java.security.Permission)
, RuntimePermission
public boolean desiredAssertionStatus()
У немногих программистов будет любая потребность в этом методе; это обеспечивается в пользу JRE непосредственно. (Это позволяет class определять в то время, когда это инициализируется, должны ли утверждения быть включены.) Отмечают, что этот метод, как гарантируют, не возвратит фактическое состояние утверждения, которое было (или будет), связанный с указанным class, когда это было (или будет), инициализированный.
ClassLoader.setClassAssertionStatus(java.lang.String, boolean)
, ClassLoader.setPackageAssertionStatus(java.lang.String, boolean)
, ClassLoader.setDefaultAssertionStatus(boolean)
public boolean isEnum()
public T[] getEnumConstants()
public T cast(Object obj)
Class
объект.obj
- объект, который будет брошенClassCastException
- если объект не является нулем и не присваиваем типу T.public <U> Class<? extends U> asSubclass(Class<U> clazz)
Class
объект представить подкласс class, представленного указанным объектом class. Проверки, что бросок допустим, и бросает a ClassCastException
если это не. Если этот метод успешно выполняется, он всегда возвращает ссылку на этот объект class. Этот метод полезен, когда клиент должен "сузить" тип a Class
возразите, чтобы передать это к API, который ограничивает Class
объекты, которые это готово принять. Бросок генерировал бы время компиляции, предупреждая, поскольку правильность броска не могла быть проверена во времени выполнения (потому что универсальные типы реализуются стиранием).
Class
объект, бросок, чтобы представить подкласс указанного объекта class.ClassCastException
- если это Class
объект не представляет подкласс указанного class (здесь, "подкласс" включает class непосредственно).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
public AnnotatedType getAnnotatedSuperclass()
public AnnotatedType[] getAnnotatedInterfaces()
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92