mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-08 19:02:54 +08:00
68 lines
14 KiB
HTML
68 lines
14 KiB
HTML
<div class="header">
|
||
<div class="subTitle">
|
||
org.omg.DynamicAny
|
||
</div>
|
||
<h2 class="title" title="Interface DynAny">Interface DynAny</h2>
|
||
</div><div class="contentContainer">
|
||
<div class="description">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<dl>
|
||
<dt>
|
||
All Superinterfaces:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../org/omg/DynamicAny/DynAnyOperations.html" title="界面在org.omg.DynamicAny中">DynAnyOperations</a> , <a href="../../../org/omg/CORBA/portable/IDLEntity.html" title="界面在org.omg.CORBA.portable中">IDLEntity</a> , <a href="../../../org/omg/CORBA/Object.html" title="在org.omg.CORBA中的接口">Object</a> , <a href="../../../java/io/Serializable.html" title="java.io中的接口">Serializable</a></span>
|
||
</dd>
|
||
</dl>
|
||
<dl>
|
||
<dt>
|
||
All Known Subinterfaces:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../org/omg/DynamicAny/DynArray.html" title="界面在org.omg.DynamicAny中">DynArray</a> , <a href="../../../org/omg/DynamicAny/DynEnum.html" title="界面在org.omg.DynamicAny中">DynEnum</a> , <a href="../../../org/omg/DynamicAny/DynFixed.html" title="界面在org.omg.DynamicAny中">DynFixed</a> , <a href="../../../org/omg/DynamicAny/DynSequence.html" title="界面在org.omg.DynamicAny中">DynSequence</a> , <a href="../../../org/omg/DynamicAny/DynStruct.html" title="界面在org.omg.DynamicAny中">DynStruct</a> , <a href="../../../org/omg/DynamicAny/DynUnion.html" title="界面在org.omg.DynamicAny中">DynUnion</a> , <a href="../../../org/omg/DynamicAny/DynValue.html" title="界面在org.omg.DynamicAny中">DynValue</a> , <a href="../../../org/omg/DynamicAny/DynValueBox.html" title="界面在org.omg.DynamicAny中">DynValueBox</a> , <a href="../../../org/omg/DynamicAny/DynValueCommon.html" title="界面在org.omg.DynamicAny中">DynValueCommon</a></span>
|
||
</dd>
|
||
</dl>
|
||
<dl>
|
||
<dt>
|
||
所有已知实现类:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../org/omg/DynamicAny/_DynAnyStub.html" title="org.omg.DynamicAny中的类">_DynAnyStub</a> , <a href="../../../org/omg/DynamicAny/_DynArrayStub.html" title="org.omg.DynamicAny中的类">_DynArrayStub</a> , <a href="../../../org/omg/DynamicAny/_DynEnumStub.html" title="org.omg.DynamicAny中的类">_DynEnumStub</a> , <a href="../../../org/omg/DynamicAny/_DynFixedStub.html" title="org.omg.DynamicAny中的类">_DynFixedStub</a> , <a href="../../../org/omg/DynamicAny/_DynSequenceStub.html" title="org.omg.DynamicAny中的类">_DynSequenceStub</a> , <a href="../../../org/omg/DynamicAny/_DynStructStub.html" title="org.omg.DynamicAny中的类">_DynStructStub</a> , <a href="../../../org/omg/DynamicAny/_DynUnionStub.html" title="org.omg.DynamicAny中的类">_DynUnionStub</a> , <a href="../../../org/omg/DynamicAny/_DynValueStub.html" title="org.omg.DynamicAny中的类">_DynValueStub</a></span>
|
||
</dd>
|
||
</dl>
|
||
<hr/> <br/> <pre>public interface <span class="typeNameLabel">DynAny</span>
|
||
extends <a href="../../../org/omg/DynamicAny/DynAnyOperations.html" title="interface in org.omg.DynamicAny">DynAnyOperations</a>, <a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a>, <a href="../../../org/omg/CORBA/portable/IDLEntity.html" title="interface in org.omg.CORBA.portable">IDLEntity</a></pre>
|
||
<div class="block">
|
||
<span>任何值都可以动态解释(遍历)并通过DynAny对象构造。</span>
|
||
<span>DynAny对象与数据值相关联,数据值对应于插入任何值的副本。</span>
|
||
<p> <span>DynAny对象可以被视为组件DynAnys的有序集合。</span> <span>对于代表基本类型(如long)或无组件类型(如空异常)的DynAnys,组件的有序集合为空。</span> <span>每个DynAny对象将当前位置的概念维护到其组件DynAnys的集合中。</span> <span>当前位置由从0到n-1运行的索引值来标识,其中n是组件的数量。</span> <span>特殊索引值-1表示当前位置。</span> <span>对于不能具有当前位置的值(如空异常),索引值固定为-1。</span> <span>如果使用具有组件的值初始化DynAny,则索引将初始化为0.创建未初始化的DynAny(即,没有值但具有允许组件的TypeCode的DynAny)之后,当前位置取决于类型由DynAny代表的价值。</span> <span>(当前位置设置为0或-1,具体取决于新的DynAny是否为其组件获取默认值。)</span> </p>
|
||
<p> <span>迭代操作倒退,查找和下一个可以用于更改当前位置,并且current_component操作返回当前位置的组件。</span> <span>component_count操作返回DynAny的组件数。</span> <span>总而言之,这些操作可以对DynAny的组件执行迭代,例如(递归)检查其内容。</span> </p>
|
||
<p> <span>构造的DynAny对象是与构造类型相关联的DynAny对象。</span> <span>有一个不同的接口,从DynAny接口继承,与IDL(固定,枚举,结构,序列,联合,数组,异常和值类型)中的每种构造类型相关联。</span> </p>
|
||
<p> <span>构造的DynAny对象导出可以创建新的DynAny对象的操作,每个对象都与构造的数据值的组件相关联。</span> <span>作为示例,DynStruct与一个结构体值相关联。</span> <span>这意味着DynStruct可能被视为拥有一个有序的组件集合,每个结构成员一个。</span> <span>DynStruct对象导出可以创建新的DynAny对象的操作,每个对象都与结构体的成员相关联。</span> </p>
|
||
<p> <span>如果已经从另一个(构造的)DynAny对象获取DynAny对象,例如DynAny表示从DynStruct创建的结构成员,则DynAny会在逻辑上包含DynStruct。</span> <span>调用插入或获取操作使当前位置保持不变。</span> <span>销毁顶层DynAny对象(未作为另一个DynAny的组件获取的对象)也会销毁从其获取的任何组件DynAny对象。</span> <span>销毁非顶级DynAny对象什么都不做。</span> <span>对已销毁的顶级DynAny或其任何后代调用操作会引发OBJECT_NOT_EXIST。</span> <span>如果程序员想要销毁一个DynAny对象,但是仍然想要操作与它相关联的数据值的某个组件,那么他或她应该首先为该组件创建一个DynAny,然后创建一个创建的DynAny对象的副本。</span> </p>
|
||
<p> <span>已经定义了DynAny对象的行为,以便在分配的内存空间和访问速度方面实现高效的实现。</span> <span>DynAny对象旨在用于遍历从anys提取的值或在运行时构建anys的值。</span> <span>不建议将其用于其他目的。</span> </p>
|
||
<p> <span>处理基本的DynAny对象需要插入和获取操作,但也有助于处理构造的DynAny对象。</span> <span>将基本数据类型值插入构造的DynAny对象意味着初始化与DynAny对象关联的构造数据值的当前组件。</span> <span>例如,在DynStruct上调用insert_boolean意味着在关联的struct数据值的当前位置插入一个布尔数据值。</span> <span>如果TypeCode等同于DynAny中包含的TypeCode,或者如果DynAny具有组件,则类型与当前位置的DynAny的TypeCode相当,则该类型与插入或提取值是一致的。</span> </p>
|
||
<p> <span>DynAny和DynAnyFactory对象旨在在其创建和使用的进程的本地。</span> <span>这意味着对DynAny和DynAnyFactory对象的引用不能导出到其他进程,或者使用ORB.object_to_string()进行外部化。</span> <span>如果尝试这样做,违规行为会引发MARSHAL系统异常。</span> <span>由于它们的接口在IDL中指定,所以DynAny对象导出在标准org.omg.CORBA.Object接口中定义的操作。</span> <span>但是,任何调用通过Object接口导出的操作的尝试可能会引发标准的NO_IMPLEMENT异常。</span> <span>尝试在DII中使用DynAny对象可能会引发NO_IMPLEMENT异常。</span> </p>
|
||
</div> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="summary">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ========== METHOD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.summary">
|
||
<!-- --> </a> <h3>方法摘要</h3>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.org.omg.DynamicAny.DynAnyOperations">
|
||
<!-- --> </a> <h3>Methods inherited from interface org.omg.DynamicAny.<a href="../../../org/omg/DynamicAny/DynAnyOperations.html" title="interface in org.omg.DynamicAny">DynAnyOperations</a></h3> <code><a href="../../../org/omg/DynamicAny/DynAnyOperations.html#assign-org.omg.DynamicAny.DynAny-">assign</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#component_count--">component_count</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#copy--">copy</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#current_component--">current_component</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#destroy--">destroy</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#equal-org.omg.DynamicAny.DynAny-">equal</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#from_any-org.omg.CORBA.Any-">from_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_any--">get_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_boolean--">get_boolean</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_char--">get_char</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_double--">get_double</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_dyn_any--">get_dyn_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_float--">get_float</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_long--">get_long</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_longlong--">get_longlong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_octet--">get_octet</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_reference--">get_reference</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_short--">get_short</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_string--">get_string</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_typecode--">get_typecode</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_ulong--">get_ulong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_ulonglong--">get_ulonglong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_ushort--">get_ushort</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_val--">get_val</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_wchar--">get_wchar</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#get_wstring--">get_wstring</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_any-org.omg.CORBA.Any-">insert_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_boolean-boolean-">insert_boolean</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_char-char-">insert_char</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_double-double-">insert_double</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_dyn_any-org.omg.DynamicAny.DynAny-">insert_dyn_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_float-float-">insert_float</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_long-int-">insert_long</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_longlong-long-">insert_longlong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_octet-byte-">insert_octet</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_reference-org.omg.CORBA.Object-">insert_reference</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_short-short-">insert_short</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_string-java.lang.String-">insert_string</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_typecode-org.omg.CORBA.TypeCode-">insert_typecode</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_ulong-int-">insert_ulong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_ulonglong-long-">insert_ulonglong</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_ushort-short-">insert_ushort</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_val-java.io.Serializable-">insert_val</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_wchar-char-">insert_wchar</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#insert_wstring-java.lang.String-">insert_wstring</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#next--">next</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#rewind--">rewind</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#seek-int-">seek</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#to_any--">to_any</a>, <a href="../../../org/omg/DynamicAny/DynAnyOperations.html#type--">type</a></code></li>
|
||
</ul>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.org.omg.CORBA.Object">
|
||
<!-- --> </a> <h3>Methods inherited from interface org.omg.CORBA.<a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a></h3> <code><a href="../../../org/omg/CORBA/Object.html#Z:Z_create_request-org.omg.CORBA.Context-java.lang.String-org.omg.CORBA.NVList-org.omg.CORBA.NamedValue-">_create_request</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_create_request-org.omg.CORBA.Context-java.lang.String-org.omg.CORBA.NVList-org.omg.CORBA.NamedValue-org.omg.CORBA.ExceptionList-org.omg.CORBA.ContextList-">_create_request</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_duplicate--">_duplicate</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_get_domain_managers--">_get_domain_managers</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_get_interface_def--">_get_interface_def</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_get_policy-int-">_get_policy</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_hash-int-">_hash</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_is_a-java.lang.String-">_is_a</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_is_equivalent-org.omg.CORBA.Object-">_is_equivalent</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_non_existent--">_non_existent</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_release--">_release</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_request-java.lang.String-">_request</a>, <a href="../../../org/omg/CORBA/Object.html#Z:Z_set_policy_override-org.omg.CORBA.Policy:A-org.omg.CORBA.SetOverrideType-">_set_policy_override</a></code></li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
</div> |