[英]How to call a String or any datatype from another class in java
我有一個LoginGUI和MainGUI,我想做的是在MainGUI中以字符串形式返回當前用戶或以Integer形式返回UserID。 我的程序運行LoginGUI,然后如果UserName密碼與數據庫匹配,它將允許您進入MainGUI。 我已經在我的LoginGUI中聲明了CurrUserID和CurrUser-它們都是公共的,但是如何在MainGUI中使用它們呢?
這是我的LoginGUI的代碼-我正在使用swing。
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;
}
我想做的是在MainGUI中返回currUser。 我怎樣才能?
添加一個成員,例如String uid;
到您的MainGUI類,並創建兩個構造函數,一個接受String
,另一個接受Integer
; 在'em'中,將uuid
設置為所傳遞的值。 現在,將您的用戶ID綁定到MainGUI,以供以后使用。
因此,當您完成LoginGUI時,請初始化new MainGUI(passedID)
。
您可以在MainGUI
類中添加一個setter方法, MainGUI
調用它:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.