站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题请教:初学JAVA,关于继承了父类的问题

请教:初学JAVA,关于继承了父类的问题

摘要: 请教:初学JAVA,关于继承了父类的问题


请教:初学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?改请高手指点指点。




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


TO java_augur:
“如果是protected或者public就可以继承了。”

高手!能写个代码参考参考吗?先谢了!


jProgressBar1.setValue(33);
super.jProgressBar1.setValue(33);

jProgressBar1 ,super.jProgressBar1是一个变量!


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


代码写的有点乱啊


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


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


实现接口 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 编译通过并且运行


回楼上,你的程序虽然可以运行也有结果,但是不管33%改成多少,进度条都是不变的,好像不符合楼主的要求吧


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


谢谢各位这么好心。


↑返回目录
前一篇: java 多线程问题,急!
后一篇: 类的问题;迷茫!求助!