gpt4 book ai didi

java - LuaJ 如何在Lua脚本中创建Java对象的实例?

转载 作者:行者123 更新时间:2023-12-01 10:25:02 26 4
gpt4 key购买 nike

我有 Java 类:

class SomeClass{
private int i;
public SomeClass(int i){
this.i = i;
}
}

我需要使用 LuaJ 库在 Lua 脚本中创建此类的实例并将其传递给 Java 函数。我该怎么做?

最佳答案

这是在 lua.org 上找到的一些示例代码:

jframe = luajava.bindClass( "javax.swing.JFrame" )
frame = luajava.newInstance( "javax.swing.JFrame", "Texts" );
frame:setDefaultCloseOperation(jframe.EXIT_ON_CLOSE)
frame:setSize(300,400)
frame:setVisible(true)

来源:http://www.luaj.org/luaj/3.0/README.html#luajava

根据您的示例,这应该翻译为:

local obj = luajava.newInstance("your.package.SomeClass",123)
print(obj.i) --> nil -- Since it's a private field

如果您有方法 public int getValue(),则可以使用 obj:getValue()

我刚刚亲自测试过这一点,因为我已经很长时间没有测试过了。

关于java - LuaJ 如何在Lua脚本中创建Java对象的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35391769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com