如何在java中从另一个类调用字符串或任何数据类型
我有一个LoginGUI和一个MainGUI,我想做的是在MainGUI中以字符串形式返回当前用户,或者以整数形式返回UserID。我的程序运行LoginGUI,然后如果用户名和密码与数据库匹配,它将允许您进入MainGUI。我已经在我的LoginGUI中声明了CurrUserID和CurrUser-两者都是公共的,但是我如何在我的MainGUI中使用它们呢 这是我的登录代码-我正在使用swing如何在java中从另一个类调用字符串或任何数据类型,java,swing,class,Java,Swing,Class,我有一个LoginGUI和一个MainGUI,我想做的是在MainGUI中以字符串形式返回当前用户,或者以整数形式返回UserID。我的程序运行LoginGUI,然后如果用户名和密码与数据库匹配,它将允许您进入MainGUI。我已经在我的LoginGUI中声明了CurrUserID和CurrUser-两者都是公共的,但是我如何在我的MainGUI中使用它们呢 这是我的登录代码-我正在使用swing private void loginButActionPerformed(java.awt
private void loginButActionPerformed(java.awt.event.ActionEvent evt) {
for (int i = 0; i <= size; i++) {
if (login.getText().equals(users[i].getUser())) {
currUser = users[i].getUserID();
if (password.getText().equals(users[i].getPassword())) {
try {
MainGUI main = new MainGUI(users);
main.setVisible(true);
this.dispose();
} catch (SQLException ex) {
Logger.getLogger(LoginGUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
else{
JOptionPane.showMessageDialog(null, "Incorrect Password");
}
}
else{
JOptionPane.showMessageDialog(null, "Incorrect UserName");
}
}
}
public int getCurrUser() {
return currUser;
}
private void loginButActionPerformed(java.awt.event.ActionEvent evt){
对于(inti=0;i添加一个成员,比如说stringuid;
)到MainGUI类,并创建两个构造函数,一个接受String
,另一个接受Integer
;在它们中,将uuid
设置为传递的任何内容。现在,您的用户id将绑定到MainGUI供以后使用
因此,当您完成登录后,初始化newmaingui(passedID)
您可以在MainGUI
类中添加setter方法,并像这样调用它:
main.setCurrentUser(currUser);
要将多个字段从LoginGUI
传递到MainGUI
,可以使用包装类,例如
CurrUserDetails details = new CurrUserDetails(userID, userName);
main.setCurrentUserDetails(currUser);
为了调用类的任何非静态方法,您需要一个类的实例,例如
public class Foo{
public void bar(){
// do stuff
}
}
Foo f = new Foo();
f.bar(); // invoking non-static method of class Foo
发布相关代码。在没有看到您拥有的内容的情况下,很难提出任何建议。您必须在这里提供更多信息。您使用的是Swing?框架?您所说的“我的程序运行登录”是什么意思?您正在实例化一个实例吗?运行一个流程吗?MainGUI是如何开始的?