qq_35384299 2016-07-08 12:47 采纳率: 100%
浏览 1398
已采纳

java中子类调用父类构造函数中定义的变量

package jm;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class dl extends JFrame implements ActionListener{
GridBagLayout gridbag=new GridBagLayout();

public dl(){
super("登陆界面");
setSize(500,500);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// setLookAndFell();

setLayout(gridbag);
JLabel yhm=new JLabel("用户名:");
JTextField yyhm=new JTextField(20);
JLabel mmm=new JLabel("密码:");
JPasswordField mm=new JPasswordField(20);
mm.setEchoChar('#');
JButton tj=new JButton("登陆");
addComponent(yhm,0,0,10,20,1,1,GridBagConstraints.NONE,GridBagConstraints.EAST);
addComponent(yyhm,1,0,10,20,1,4,GridBagConstraints.NONE,GridBagConstraints.WEST);
addComponent(mmm,0,1,10,20,1,1,GridBagConstraints.NONE,GridBagConstraints.EAST);
addComponent(mm,1,1,10,20,1,1,GridBagConstraints.NONE,GridBagConstraints.WEST);
addComponent(tj,1,40,10,20,1,1,GridBagConstraints.NONE,GridBagConstraints.WEST);
pack();
setVisible(true);
}
public void addComponent(Component component,int gridx,int gridy,int ipadx,int ipady,int weightx,int weighty,int fill,int anchor){
GridBagConstraints constraint=new GridBagConstraints();
constraint.gridx=gridx;
constraint.gridy=gridy;
constraint.ipadx=ipadx;
constraint.ipady=ipady;
constraint.weightx=weightx;
constraint.fill=fill;
constraint.anchor=anchor;
gridbag.setConstraints(component,constraint);
add(component);
}
public void actionPerformed(ActionEvent event){

}

public static void main(String[] arg){
dl dld=new dl();
}

}

 父类的构造函数中定义了一个按钮tj,用来作为登录按钮,没有定义行为,准备在子类中定义

package jm;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class sczj extends dl{

public sczj(){


}
public void actionPerformed(ActionEvent event){
    Object source=event.getSource();
    if(source==super.tj){
     System.out.println("其实你没有错");        //准备在这里定义tj按钮的行为,但是NETBEANS提示找不到符号tj,动行的时候也没有效果
    }

}

public static void main(String[] arg){
new sczj();

}

}

  • 写回答

2条回答

  • zxgmlcj 2016-07-08 14:09
    关注

    首先,你这种写法就不符合规范,
    其次,你把按钮定义在构造方法中,这个变量的作用域也是在构造方法中,如何能在外部调用,除非你将按钮的变量设置为类的成员变量,
    即在构造方法外部申明按钮变量

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器