易截截图软件、单文件、免安装、纯绿色、仅160KB

jpython调用java类的模板


使用JPype模块让Python调用JAVA的类
Python idea!   2009-03-24 19:44   阅读267   评论0  
字号: 大大  中中  小小
看看例子就知道啦,真是为Python(不是Jython,而是CPython)提供了强大力量!
首先在java下建立一个再也简单不过的包:
package org.wg3i.test;
 
class Test {
    private String msg;
 
    public Test() {
    }
 
    public void speak(String msg) {
    System.out.println(msg);
    }
 
    public void setString(String s) {
    msg = s;
    }
 
    public String getString() {
    return msg;
    }
}
在Python下使用JPype模块来调用我们刚刚生成的java包:
import jpype
import os.path
 
jarpath = os.path.join(os.path.abspath('.'), 'build/jar')
jpype.startJVM(jpype.getDefaultJVMPath(), "-Djava.ext.dirs=%s" % jarpath)
Test = jpype.JClass('org.wg3i.test.Test')     # 取得包org.wg3i.test中的类Test
t = Test()        # 创建Test实例
t.speak("This is a test message")      # 尝试调用类的一个方法
t.setString("Hello, World")        #给定String
s = t.getString()        # 获取String
print s
jpype.shutdownJVM()
下面来介绍下如何调用包而不是具体的一个类:
import jpype
import os.path
 
classpath = os.path.join(os.path.abspath('.'), 'build/classes')
jpype.startJVM(jpype.getDefaultJVMPath(), "-Djava.class.path=%s" % classpath)
testPkg = jpype.JPackage('org').wg3i.test         # 取得包
Test = testPkg.Test      # 取得类
t = Test()     # 创建Test实例
t.speak("This is a test message")                 # 尝试调用类的一个方法
t.setString("Hello, World")        &nbs


相关文档:

Java的一些汇总

1.//property文件的读取
//com.test.message文件
package com.test;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
public class Test_Messages {
private static final String BUNDLE_NAME = "com.test.messages";
private static final ResourceBundle RESOURCE_BUNDLE = Reso ......

请大家指教,有关Java中main方法及参数问题

今天没事干。,拿Java中的main函数来讨教,。。还请诸位指点啊,,
public static void main(String args [])
{
 .....
}
这是大家一般的写法吧,这里我想讨教的主要有以下几点:
1.它的参数问题,那个参数倒底有何用呢,,这是很令人迷惑的,这里自己写了个例子试了一下,但是出现了异常:
 class A
{ ......

java WebService Case

一、Axis安装 1、环境 J2SE SDK 1.3 or 1.4: 我使用 1.4.2 Servlet Container: 我使用的Tomcat 5.0
2、到 http://ws.apache.org/Axis/网站下载Axis安装包
3、解压缩安装包,将Axis_UNZIP_PATH\Axis-version\webapps下的Axis包拷贝到TOMCAT_HOME\webapps\下,以下约定Axis_HOME为该TOMCAT_HOME\webapps\Axis目录
4、启动 ......

Java算法 直接插入排序

/**
     * 直接插入排序,首先比较a[n]与a[n-1],在比较a[n]与a[n-2]
     * */
    public void sort0(double[] a){
        for(int i = 0; i < a.length -1; i ++){
           ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号