大家好,今天小编关注到一个比较有意思的话题,就是关于c语言调用java中的方法的问题,于是小编就整理了5个相关介绍c语言调用Java中的方法的解答,让我们一起看看吧。
如何在C/C++中调用J***a_C/C++?
我觉得C++调用J***a也蛮复杂的,手机回复就不上代码了,大致步骤是1. 创建JVM初始化JVM的一些参数,并通过JNI_CreateJ******M创建出JVM和JNIEnv2. 加载类通过JNIEnv的方法FindClass加载你要的J***a类,如Foo3. 调用构造函数,并创建对象利用JNIEnv的GetMethodID方法,注意这里面的参数填写<init>表明是构造函数,然后把结果传入JNIEnv的NewObject方法创建对象4.方法调用配合JNIEnv的GetMethodID获取到JMethodID,然后再利用JNIEnv的CallXXXMethod即可(需要第三步创建出的jobject)
j***a方法如何调用?
一、调用普通方法
第一步在j***a中,调用普通方法,需要创建类的对象进行调用方法,输入“Test2 test=new Test2();test.fun();”代码,调用fun方法,如下图所示:
第二步运行j***a程序,可以看到成功调用普通方法了,如下图所示:
二、调用静态方法
第一步方法前面加了static关键字就是静态方法,j***a调用静态方法直接用类名.方法名就可以调用,如下图所示:
第二步运行j***a程序,可以看到成功调用静态方法了,如下图所示:
第三步如果想调用方法返回值的话,在方法中定义返回值的类型,使用retuen返回结果,如下图所示:
网页调用j***a程序?
静态的html标签是无法直接调用j***a程序的有几种方法可以实现1、将按钮放到form表单中,当按钮点击时提交表单(或者直接将input的type属性定义成submit),表单可以指向JSP或Servlet,在JSP或Servlet里调用j***a程序2、在按钮的onclick时间中添加js代码self.location="url";其中url指向JSP或Servlet3、使用第三方的javascript包,dwr是一个不错的选择:需要准备dwr的jar包,并将之放到lib目录下;修改web.xml文件,添加DWRServlet的映射;配置dwr,即在WEB-INF目录下,添加dwr.xml文件,让dwr知道在运行的时候应该给哪些J***aBean生成相应的j***ascript库!将需要的脚本库引入到html页面中就可以通过dwr的API访问j***a类了不是很难,网上参考资料挺多的4、使用MVC框架的话就更简单了,以struts为例,可以仿照1或2,将url替换成配置文件中配置的地址就能访问j***a程序了
j***a中的反射,invoke方法详解?
就是调用类中的方法,最简单的用法是可以把方法参数化 invoke(class, method) 比如你Test类里有一系列名字相似的方法setValue1、setValue2等等 可以把方法名存进数组v[],然后循环里invoke(test,v[i]),就顺序调用了全部setValue
一种语言是如何调用另一种语言的?
语言互相调用的问题,到程序执行层就是进程间通讯的问题,因为一个程序执行的时候,对os来说就是一个或者多个进程。
linux间进程通讯的方法主要有管道、命名管道、网络套接口socket以及unix system v ipc通讯机制消息队列、信号量和共享内存。详细原理就不多赘述。
管道
命名管道fifo
消息队列
到此,以上就是小编对于c语言调用j***a中的方法的问题就介绍到这了,希望介绍关于c语言调用j***a中的方法的5点解答对大家有用。