public abstract class TypeCode extends Object implements IDLEntity
TypeCode
объекты используются:
NamedValue
объекты используются, чтобы представить параметры и возвращаемые значения. Один из их компонентов Any
объект, который поочередно имеет как один из его компонентов a TypeCode
объект. Представление a TypeCode
объект непрозрачен, но абстрактно, a TypeCode
объект состоит из:
kind
поле, которое устанавливается в экземпляр class TCKind
TypeCode
объект, описывающий тип IDL OMG 1ong
имеет вид TCKind.tk_long
и никакие дополнительные поля. TypeCode
описание типа IDL OMG sequence<boolean, 10>
имеет a kind
поле со значением TCKind.tk_sequence
и также поля со значениями boolean
и 10
для типа элементов последовательности и длины последовательности.
TypeCode
объекты могут быть получены различными способами: Any.insert_X
, где X основной тип IDL. Этот метод создает a TypeCode
объект для типа X и присваивает это Any
объект type
поле. Например, следующее создает a TypeCode
объект для a string
с максимумом 30 символов:
org.omg.CORBA.TypeCode tcString = orb.create_string_tc(30);
Следующее создает a TypeCode
объект для array
из пять string
s:
org.omg.CORBA.TypeCode tcArray = orb.create_array_tc( 5, TCKind.tk_string);
Следующее создает a TypeCode
объект для интерфейса под названием "Учетная запись":
org.omg.CORBA.TypeCode tcInterface = orb.create_interface_tc( "thisId", "Account");
_type
метод в Holder
классы для определяемых пользователем типов IDL. Они Holder
классы сгенерированы idltojava
компилятор. Большинство методов в class TypeCode
средства доступа, и информация, содержавшаяся в a TypeCode
объект является определенным для определенного типа. Поэтому, методы должны быть вызваны только на виде кодов типа, к которым они применяются. Если метод средства доступа попытается получить доступ к информации от несоответствующего вида кода типа, то это выдаст исключение TypeCodePackage.BadKind
. Например, если метод discriminator_type
вызывается на чем-либо кроме a union
, это бросит BadKind
потому что только union
у s есть различитель. Следующие шоу списка, которым применяются к методы, который кодируют виды типа:
Эти методы могут быть вызваны на все TypeCode
виды:
equal
kind
Эти методы могут быть вызваны на objref
, struct
, union
, enum
, alias
, exception
, value
, value_box
, native
, и abstract_interface
:
id
name
Эти методы могут быть вызваны на struct
, union
, enum
, и exception
:
member_count
member_name
Эти методы могут быть вызваны на struct
, union
, и exception
:
member_type(int index)
Эти методы могут быть вызваны на union
:
member_label
discriminator_type
default_index
Эти методы могут быть вызваны на string
, sequence
, и array
:
length
Эти методы могут быть вызваны на alias
, sequence
, array
, и value_box
:
content_type
В отличие от других псевдообъектов CORBA, TypeCode
объекты можно передать как общие параметры IDL.
Методы parameter
и param_count
, которые осуждаются, не отображаются.
IDL Java расширяет спецификацию CORBA, чтобы позволить все операции, разрешенные на a struct
TypeCode
быть разрешенным на exception
TypeCode
также.
Конструктор и Описание |
---|
TypeCode() |
Модификатор и Тип | Метод и Описание |
---|---|
abstract TypeCode |
concrete_base_type()
Возвраты
TypeCode объект, который описывает конкретный базовый тип типа значения что это TypeCode объект описывает. |
abstract TypeCode |
content_type()
Возвраты
TypeCode объект, представляющий IDL, вводит для элементов объекта, описанного этим TypeCode объект. |
abstract int |
default_index()
Возвращает индексирование элемента значения по умолчанию, или-1, если нет никакого элемента значения по умолчанию.
|
abstract TypeCode |
discriminator_type()
Возвраты a
TypeCode объект, описывающий все задействованные метки не по умолчанию. |
abstract boolean |
equal(TypeCode tc)
Сравнивает это
TypeCode объект с данным, тестирующим на равенство. |
abstract boolean |
equivalent(TypeCode tc)
Тесты, чтобы видеть, если данный
TypeCode объект эквивалентен этому TypeCode объект. |
abstract short |
fixed_digits()
Возвращает число цифр в фиксированном типе, описанном этим
TypeCode объект. |
abstract short |
fixed_scale()
Возвращает масштаб фиксированного типа, описанного этим
TypeCode объект. |
abstract TypeCode |
get_compact_typecode()
Полосы все дополнительное имя и поля имени элемента, но листы весь псевдоним typecodes неповрежденный.
|
abstract String |
id()
Получает RepositoryId, глобально идентифицирующий тип этого
TypeCode объект. |
abstract TCKind |
kind()
Получает вид этого
TypeCode объект. |
abstract int |
length()
Возвращает число элементов в типе, описанном этим
TypeCode объект. |
abstract int |
member_count()
Получает число членов в типе, описанном этим
TypeCode объект. |
abstract Any |
member_label(int index)
Получает метку члена профсоюза, идентифицированного данным, индексируют.
|
abstract String |
member_name(int index)
Получает простое имя элемента, идентифицированного данным, индексируют.
|
abstract TypeCode |
member_type(int index)
Получает
TypeCode объект, описывающий тип элемента, идентифицированного данным, индексирует. |
abstract short |
member_visibility(int index)
Возвращает константу, которая указывает, что видимость элемента в данном индексирует.
|
abstract String |
name()
Получает простое имя, идентифицирующее это
TypeCode объект в пределах его контекста включения. |
abstract short |
type_modifier()
Возвращает постоянное указание на модификатор типа значения что это
TypeCode объект описывает. |
public abstract boolean equal(TypeCode tc)
TypeCode
объект с данным, тестирующим на равенство. TypeCode
объекты равны, если они являются взаимозаменяемыми и дают идентичные результаты когда TypeCode
операции применяются к ним.tc
- TypeCode
объект сравниться сtrue
если коды типа равны; false
иначеpublic abstract boolean equivalent(TypeCode tc)
TypeCode
объект эквивалентен этому TypeCode
объект. tc
- typecode, чтобы сравниться с этим typecodetrue
если данный typecode эквивалентен этому typecode; false
иначеpublic abstract TypeCode get_compact_typecode()
TypeCode
объект с дополнительным именем и полями имени элемента, разделенными, за исключением псевдонима typecodes, которые оставляют неповрежденнымиCORBA
пакет комментирует для нереализованных функцийpublic abstract TCKind kind()
TypeCode
объект. Вид кода типа определяет который TypeCode
методы могут по закону быть вызваны на это. Метод kind
может быть вызван на любого TypeCode
объект.
TCKind
экземпляр, указывающий на значение kind
поле этого TypeCode
объектpublic abstract String id() throws BadKind
TypeCode
объект. Метод id
может быть вызван на ссылку на объект, структуру, объединение, перечисление, псевдоним, исключение, valuetype, упакован valuetype, собственные, и абстрактные коды типа интерфейса. Ссылка на объект, исключение, valuetype, упакованный valuetype, собственный, и абстрактный интерфейс TypeCode
у объектов всегда есть RepositoryId. Структура, объединение, перечисление, и псевдоним TypeCode
объекты, полученные из Репозитария Интерфейса или метода ORB.create_operation_list
также всегда имейте RepositoryId. Если нет никакого RepositoryId, метод может возвратить пустую строку.
TypeCode
возразите или пустая строка, если нет никакого RepositoryIDBadKind
- если метод вызывается на несоответствующее отчастиTypeCode
объектpublic abstract String name() throws BadKind
TypeCode
объект в пределах его контекста включения. Так как имена локальны для Репозитария, имя, возвращенное из a TypeCode
объект, возможно, не соответствует имя типа в любом определенном Репозитарии, и может даже быть пустой строкой. Метод name
может быть вызван на ссылку на объект, структуру, объединение, перечисление, псевдоним, исключение, valuetype, упакован valuetype, собственный, и абстрактный интерфейс TypeCode
объекты.
TypeCode
возразите или пустая строкаBadKind
- если метод вызывается на несоответствующее отчастиTypeCode
объектpublic abstract int member_count() throws BadKind
TypeCode
объект. Метод member_count
может быть вызван на структуру, объединение, и перечисление TypeCode
объекты. IDL Java расширяет спецификацию CORBA, чтобы позволить этому методу работать на исключениях также.
TypeCode
объектBadKind
- если метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract String member_name(int index) throws BadKind, Bounds
TypeCode
объект, возможно, не соответствует имя элемента в любом определенном Репозитарии, и может даже быть пустой строкой. Метод member_name
может быть вызван на структуру, объединение, и перечисление TypeCode
объекты. IDL Java расширяет спецификацию CORBA, чтобы позволить этому методу работать на исключениях также.
index
- индексируйте элемента, для которого имя является reqestedBounds
- если индексирование равно или больше чем число членов, составляющее типBadKind
- если метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract TypeCode member_type(int index) throws BadKind, Bounds
TypeCode
объект, описывающий тип элемента, идентифицированного данным, индексирует. Метод member_type
может быть вызван на структуру и объединение TypeCode
объекты. IDL Java расширяет спецификацию CORBA, чтобы позволить этому методу работать на исключениях также.
index
- индексируйте элемента, для которого информация о типе, начинаются требуемыйTypeCode
объект, описывающий элемент в данном, индексируетBounds
- если индексирование равно или больше чем число членов, составляющее типBadKind
- если метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract Any member_label(int index) throws BadKind, Bounds
Метод member_label
может только быть вызван на объединение TypeCode
объекты.
index
- индексируйте члена профсоюза, на который требуют меткуAny
объект, описывающий метку требуемого члена профсоюза или нулевого октета для элемента значения по умолчаниюBounds
- если индексирование равно или больше чем число членов, составляющее объединениеBadKind
- если метод вызывается на не состоящее в профсоюзе TypeCode
объектpublic abstract TypeCode discriminator_type() throws BadKind
TypeCode
объект, описывающий все задействованные метки не по умолчанию. Метод discriminator_type
может быть вызван только на объединении TypeCode
объекты.TypeCode
объект, описывающий задействованные метки не по умолчаниюBadKind
- если метод вызывается на не состоящее в профсоюзе TypeCode
объектpublic abstract int default_index() throws BadKind
Метод default_index
может быть вызван только на объединении TypeCode
объекты.
BadKind
- если метод вызывается на не состоящее в профсоюзе TypeCode
объектpublic abstract int length() throws BadKind
TypeCode
объект. Для строк и последовательностей, это возвращает связанный с нулем, указывающим на неограниченную строку или последовательность. Для массивов это возвращает число элементов в массиве. Метод length
может быть вызван на строку, последовательность, и массив TypeCode
объекты.
BadKind
- если метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract TypeCode content_type() throws BadKind
TypeCode
объект, представляющий IDL, вводит для элементов объекта, описанного этим TypeCode
объект. Для последовательностей и массивов, это возвращает тип элемента. Для псевдонимов это возвращает исходный тип. Отметьте, что многомерные массивы представляются вложением TypeCode
объекты, один на размерность. Для упакованного valuetypes это возвращает упакованный тип. Метод content_type
может быть вызван на последовательность, массив, псевдоним, и упакован valuetype TypeCode
объекты.
TypeCode
объект, представляющий элемент, вводит для последовательностей и массивов, исходного типа для псевдонимов, или упакованного типа для упакованного valuetypes.BadKind
- если метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract short fixed_digits() throws BadKind
TypeCode
объект. Например, typecode для номера 3000.275d мог быть fixed<7,3>
, где 7 точность, и 3 масштаб.BadKind
- если этот метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract short fixed_scale() throws BadKind
TypeCode
объект. Положительное число указывает на число цифр направо от десятичной точки. Например, у номера 3000d мог быть typecode fixed<4,0>
, где первое число является точностью, и второе число является масштабом. Отрицательное число также возможно и добавляет, обнуляет налево от десятичной точки. В этом случае, fixed<1,-3>
, мог быть typecode для номера 3000d.TypeCode
объект описываетBadKind
- если этот метод вызывается на несоответствующее отчасти TypeCode
объектpublic abstract short member_visibility(int index) throws BadKind, Bounds
TypeCode
объекты.index
- int
указание на индексирование в значениеPRIVATE_MEMBER.value
или PUBLIC_MEMBER.value
BadKind
- если этот метод вызывается на тип незначения TypeCode
объектBounds
- если данные индексируют, за пределыCORBA
пакет комментирует для нереализованных функцийpublic abstract short type_modifier() throws BadKind
TypeCode
объект описывает. Константа возвратилась, должно быть одно из следующего: VM_NONE.value
, VM_ABSTRACT.value
, VM_CUSTOM.value
, или VM_TRUNCATABLE.value
,TypeCode
объект описываетBadKind
- если этот метод вызывается на тип незначения TypeCode
объектCORBA
пакет комментирует для нереализованных функцийpublic abstract TypeCode concrete_base_type() throws BadKind
TypeCode
объект, который описывает конкретный базовый тип типа значения что это TypeCode
объект описывает. Нуль возвратов, если у этого нет конкретного базового типа.TypeCode
объект, который описывает конкретный базовый тип типа значения что это TypeCode
объект описываетBadKind
- если этот метод вызывается на неупакованный тип значения TypeCode
объектCORBA
пакет комментирует для нереализованных функций
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92