所有类


org.omg.CORBA
类 NamedValue

java.lang.Object
  继承者 org.omg.CORBA.NamedValue

public abstract class NamedValue
   
   
   
   
extends Object

在 DII 和 DSI 中用来描述参数和返回值的对象。NamedValue 对象还用在 Context 对象例程中传递属性名称和值的列表。

NamedValue 对象包含:

  • 名称:如果 NamedValue 对象用于描述某个请求的参数,则名称将是所描述操作的 OMG IDL 接口定义中指定的参数标识符。
  • 一个值:Any 对象
  • 参数模式标志,以下标志之一:
    • ARG_IN.value
    • ARG_OUT.value
    • ARG_INOUT.value
    • 0:如果此 NamedValue 对象表示 Context 对象中的一个属性,而不是参数或返回值

NamedValue 类具有三个可访问其字段的方法。以下代码段展示了如何创建 NamedValue 对象,然后访问其字段:

    ORB orb = ORB.init(args, null);
    String s = "argument_1";
    org.omg.CORBA.Any myAny = orb.create_any();
    myAny.insert_long(12345);
    int in = org.omg.CORBA.ARG_IN.value;

    org.omg.CORBA.NamedValue nv = orb.create_named_value(
        s, myAny, in);
    System.out.println("This nv name is " + nv.name());
    try {
        System.out.println("This nv value is " + nv.value().extract_long());
        System.out.println("This nv flag is " + nv.flags());
    } catch (org.omg.CORBA.BAD_OPERATION b) {
      System.out.println("extract failed");
    }
 

如果将此代码片段放入 main 方法中,则输出将如下所示:

    This nv name is argument_1
    This nv value is 12345
    This nv flag is 1
 

注意,方法 value 返回 Any 对象。若要访问 Any 对象中包含的 long 值,可使用方法 extract_long

从以下版本开始:
JDK1.2
另请参见:
Any, ARG_IN, ARG_INOUT, ARG_OUT

构造方法摘要
NamedValue()
           
 
方法摘要
abstract  int flags()
          检索用于此 NamedValue 对象的参数模式标志。
abstract  String name()
          检索此 NamedValue 对象的名称。
abstract  Any value()
          检索此 NamedValue 对象的值。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

NamedValue

public NamedValue()
方法详细信息

name

public abstract String name()
检索此 NamedValue 对象的名称。

返回:
表示此 NamedValue 对象名称的 String 对象

value

public abstract Any value()
检索此 NamedValue 对象的值。

返回:
包含此 NamedValue 对象值的 Any 对象

flags

public abstract int flags()
检索用于此 NamedValue 对象的参数模式标志。

返回:
表示此 NamedValue 对象参数模式的 int

所有类

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部