请教:初学JAVA,关于继承了父类的问题 public class SMG_main extends Frame1 { public void run() { 
jProgressBar1.setValue(33); 
super.jProgressBar1.setValue(33); 
} public class Frame1 
........ 
....... 
...... 
.... 
........ 

JProgressBar jProgressBar1 = new JProgressBar(); 
public void jButton6_actionPerformed(ActionEvent e) { 
SMG_main s1=new SMG_main(); 
s1.run(); 
} } 
Frame1显示了进度条jProgressBar1,在Frame1里点击按钮jButton6后调用类SMG_main.run(),运行后为什么jProgressBar1进度条没有改变,程序也没有报错, class SMG_main不是继承了父类Frame1,为什么不能父类Frame1的进度条jProgressBar1?改请高手指点指点。 
 

解决方案 »

  1.   

    jProgressBar1 采用的default来修饰,所以它只能用于同一个包内。如果是protected或者public就可以继承了。
      

  2.   

    TO java_augur:
    “如果是protected或者public就可以继承了。”高手!能写个代码参考参考吗?先谢了!
      

  3.   

    jProgressBar1.setValue(33); 
    super.jProgressBar1.setValue(33);jProgressBar1 ,super.jProgressBar1是一个变量!
      

  4.   

    那位好心人知道应该怎样写才能在class SMG_main改变class Frame1的jProgressBar1进度条的进度呢?
      

  5.   

    父类和子类是不是在同一个package里??
      

  6.   

    TO Angus_Fan:
    父类和子类是在同一个package里.
      

  7.   

    实现接口 ActionListener了吗?jButton6_actionPerformed是怎么回事?
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.*;
    public class SMG_main extends Frame1  {



    public static void run() { 
    jProgressBar1.setValue(33); 

    }
    public void actionPerformed(ActionEvent e) {
     
    SMG_main.run(); 

    }
    public static void main(String[] args) {
    SMG_main s1=new SMG_main();
    }
    }
    class Frame1 extends JFrame implements ActionListener

    static JButton  jbutton6=new JButton("33%");
    static JProgressBar jProgressBar1 = new JProgressBar();
    public Frame1()
    {
     
     jbutton6.addActionListener(this);
     getContentPane().add(jProgressBar1, "South");
     getContentPane().add(jbutton6,"Center");
     setSize(300, 200);
     setVisible(true);}
    public void actionPerformed(ActionEvent e) {

    }
    }eclipse 3.2  JDK1.5  编译通过并且运行
      

  8.   

    不是吧,上面的例子是说明怎么用接口来实现对按钮的响应,因为搂主给的代码不全,所以我怀疑搂住没有实现接口对按钮的响应,才导致楼住所说,按了没有任何变化。你说的33%是我自己定义按钮的时候写上去的,进度条的操作在上面啊
    不是这个33%
    static JButton  jbutton6=new JButton("33%");
    而是这个
    jProgressBar1.setValue(33);