【问题标题】:How to create NObject with constructor parameters (JavoNet)如何使用构造函数参数创建 NObject (JavoNet)
【发布时间】:2019-01-21 17:53:21
【问题描述】:

当.Net对象的构造函数有一个或多个参数时,从Java代码(NObject)创建.Net对象的语法是什么?

谢谢

【问题讨论】:

    标签: javonet


    【解决方案1】:

    erotavlas 的答案是正确的,尽管类的语法要简单得多,并且可以使用单行 (https://www.javonet.com/java-devs/guides/creating-instance-calling-instance-methods/) 来完成。

    要从 Java 创建 .NET 对象,您只需使用:

    NObject object = Javonet.New("Namespace.ClassName", params...);  
    

    附加说明,如果您的类构造函数具有数组参数(任何类型),您需要将其转换为 Object 数组。

    int[] arg1;
    Javonet.New("Namespace.ClassName", new Object[] {arg1})
    

    另外,您可以尝试新的服务,该服务将为您创建一个强类型的 java 包装器(在此处阅读 https://www.javonet.com/blog/more-about-javonet-io/

    【讨论】:

    • 请注意,如果您的目标类型名称在加载的库中是唯一的,则命名空间是可选的。
    【解决方案2】:

    如果从文档中看不出来的话,我就知道了

    使用

    添加对 dll 的引用
    Javonet.addReference()
    

    获取类型(类名)

    NType test = Javonet.getType("Namespace.Classname");
    

    使用零个或多个参数调用构造函数

    NObject obj = test.create(parameter1,parameter2, parameter3,.....etc);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多