如何在Jython中扩展java类?

时间:2012-02-28 02:33:02

标签: java class jython extend

我正在尝试在Jython类中扩展Plot.java,并在Histogram.py子类中的Plot.java中使用“setSize()和setButtons()”方法。但是,我不能这样做我得到的错误是全局变量setSize()没有定义。有人能告诉我问题是什么吗?

class Histogram(Plot):
    dataset = 0;
    def __init__(self):
        theJFrame = JFrame();
        theJFrame.setSize(400, 350);            #outer box
        setSize(self,350, 300);                 #graph window
        setButtons(self,true);                  #buttons to print, edit, etc.
        setMarksStyle(self,"none");             #do not show marks at points

2 个答案:

答案 0 :(得分:3)

Dave Newton是对的,但也注意到Jython将Java setter和getter暴露为属性,因此self.size =(350,300)也可以工作(对于Python开发人员来说,它有点漂亮)。为了节省一点点打字,您甚至可以从JFrame构造函数本身调用setter:

theJFrame = JFrame(
    size = (400, 350)            #outer box
)

有关详细信息,请参阅:http://www.jython.org/jythonbook/en/1.0/GUIApplications.html

答案 1 :(得分:2)

使用self.setSize(350, 300)