public MyPanel() {}public MyPanel(MainFrame _mainFrame) {
mainFrame=_mainFrame;
//MyPanel()  怎么调用MyPanel()呢?  直接写报错
}

解决方案 »

  1.   

    MyPanel mypanel = new MyPanel(_mainFrame);
      

  2.   

    你自己实现了构造器,就没有系统送的无参构造器了,除非自己手写个,调用是用this();
      

  3.   

    public class Test {
    public Test(){

    }

    public Test(int i){

    }
    public static void main(String[] args) {
        int i=0;
        new Test(i);
        new Test(); }}
      

  4.   

    mainFrame=_mainFrame;
    this();为什么this();不能放在第二句呢,
    因为我的mainFrame=_mainFrame;要在初始化前执行啊这有什么方法?
      

  5.   

    换一个思路:public MyPanel() { 
        this(null)
    } public MyPanel(MainFrame _mainFrame) { 
        mainFrame=_mainFrame; 
    }
      

  6.   

    为什么要初始化起执行啊??放在this();后面不是一样吗??
      

  7.   


    因为局部变量JLable a=new JLable(mainFrame.UserName),所以mainFrame要在前面,不过用set也可以就是了 ,算了 结贴吧