我有3个类,我在下面编写了它们的一部分。当我在AddStudent类中编写这个语句时,它会显示abcd1234这是密码,但是当我在MainFrame类中编写它时它将返回null。为什么??? (我使用AddStudent的构造函数将我的管理对象从MainFrame发送到AddStudent)( 我需要在大型机的AddStudent类中创建的管理对象的信息) 我该怎么办?
management.getStudentsPassword();
我的AddStudent类:
public class AddStudent extends javax.swing.JDialog {
private SystemManagement management;
/** Creates new form AddStudent */
public AddStudent(java.awt.Frame parent, boolean modal, SystemManagement management) {
super(parent, modal);
initComponents();
this.management = management;
}
我的MainFrame类:
public class MainFrame extends javax.swing.JFrame {
/** Creates new form MainFrame */
private SystemManagement management;
.
.
.}
我的SystemManagement类:
private String studentsPass;
...
public void setStudentspassword(String password){
studentsPass = password;
}
public String getStudentsPassword(){
return studentsPass;
}
答案 0 :(得分:6)
原因一 - 在MainFrame中调用getStudentsPass()时尚未设置密码。
原因二 - 您在MainFrame中使用的SystemManagement对象与AddStudent中的对象完全不同。
没有更多代码很难分辨。但我赞成Reason one - 检查程序流程,何时设置密码,何时尝试获取密码。
答案 1 :(得分:0)
从您的问题中不清楚调用setStudentPassword的位置,如果仍然将studentPass留空,则无法调用它。