我最近開始學習Lua,因爲我需要在我正在使用的Java應用程序中使用它。爲此我使用LuaJ。我在互聯網上搜索過,發現如何將一個Java方法公開給LuaJ,但是我找不到如何公開(給LuaJ訪問)一個Java對象。我看到另一篇文章關於將C#對象,Lua和答案是這樣的:如何將java對象暴露給LuaJ
任何語言交流Lua和任何應用程序之間的對象的一般方法是定義的
__index()
和__newindex()
元方法(可能還有其他人)一個userdata
...
可能有人要麼向我解釋如何做到這到底是怎麼描述或解釋另一種方式來公開對象,所以我基本上可以做這樣的事情:
//In Java.
exposeObject(myObject, "nameOfMyObject");
--Then in Lua
nameOfMyObject:myFunction();