在LUA中如何调用JAVA方法

移动开发 iOS
在LUA中如何调用JAVA方法是本文要介绍的内容,主要是来学习LUA中调用JAVA方法,具体内容的实现来看本文详解。

LUA中如何调用JAVA方法是本文要介绍的内容,主要是来学习LUA中调用JAVA方法,在使用luajava开源项目中,如何在lua中调用java的方法,如何将java对象作为参数传递到lua的函数中。下面举例说明:

我们新建一个loadScript类,代码如下:

  1. public class LoadScript {  
  2. LuaState L;  
  3. LoadScript(final String filename){  
  4. this.L = LuaStateFactory.newLuaState();  
  5. this.L.openLibs();  
  6. this.L.LdoFile(filename);  
  7. }  
  8. void closeScript(){  
  9. this.L.close();  
  10. }  
  11. void runScriptFunction(String functionName,Object obj){  
  12. this.L.getGlobal(functionName);  
  13. this.L.pushJavaObject(obj);  
  14. this.L.call(1,0);  
  15. }  

下面写一个java对象:

  1. class LoadTest{  
  2. String a;  
  3. LoadScript script;  
  4. public LoadTest(String script){  
  5. this.script = new LoadScript(script+".lua");  
  6. this.script.runScriptFunction("create",this);  
  7. }  
  8. public String getA() {  
  9. return a;  
  10. }  
  11. public void setA(String a) {  
  12. this.a = a;  
  13. }  

下面是测试代码:

  1. public static void main(String[] args) {  
  2. LoadTest test = new loadTest("function");  
  3. System.out.println(call.test.getA());  

这样,我们就可以将test对象传递到下面的lua代码中:

  1. function.lua:  
  2. function create(M)  
  3. M:setA("this is a")  
  4. end 

小结:在LUA中如何调用JAVA方法的内容介绍完了,希望通过本文的学习能对你有所帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2009-06-17 13:19:50

Java调用DLL

2011-08-22 17:13:00

LuaC++函数

2011-08-29 15:58:51

Lua函数

2013-12-13 17:33:22

Lua对象管理

2012-04-16 13:47:37

JavaMatlab

2009-07-10 17:54:15

Java中调用JythJython

2011-08-31 16:30:19

Lua多线程

2010-04-30 08:47:22

Oracle分页存储

2011-08-24 13:56:12

Lua游戏

2014-09-22 15:14:04

2011-06-22 14:07:42

Lua

2022-12-06 08:26:16

SpringAOPthis调用方法

2011-08-24 11:14:25

LUA 游戏

2009-07-27 14:13:56

调用c#方法Java scriptASP.NET

2023-04-04 07:52:26

RedisLua脚本

2011-08-31 17:58:00

VS.netLUA开发环境

2011-08-31 17:35:18

Lua解释器Script.NET

2011-08-23 14:33:51

Lua捕获字符串

2012-02-07 13:21:37

Java

2009-08-11 14:26:56

C#动态调用WebSe
点赞
收藏

51CTO技术栈公众号