簡體   English   中英

為什么當我調用另一個類時 getter 方法變為 null?

[英]why the getter method goes null when i call in another class?

但是在另一個類的 set 方法中,當我得到值時,我有 3 個類,第一個類是 getter setter 類,第二個是填充集合的類,最后一個是獲取方法 getter 的類,但它變成空值...

        public class loginAdminn {

        String Username, Password;

        public String getUsername() {
            return Username;
        }

        public void setUsername(String Username) {
            this.Username = Username;
        }

        public String getPassword() {
            return Password;
        }

        public void setPassword(String Password) {
            this.Password = Password;
        }

    }
    // method to fill the set on another class
    public void in(){
              loginAdminn p = new loginAdminn();
               String user = Username.getText();
               String pass = Password.getPassword().toString();
               p.setUsername(user);
               p.setPassword(pass);

              // new NewMain().run();

               tes.jalankan();
            }
// class method getter (null)

public void jalankan() {

       loginAdminn br = new loginAdminn();

      String kueri = "Select Username, password from Admin";

        int x = 0;

        try {
            ps = conn.prepareStatement(kueri);
            ResultSet rs = ps.executeQuery();

            while (rs.next()) {

                if (br.getUsername().equalsIgnoreCase(rs.getString("Username"))) {
                    if (br.getPassword().equalsIgnoreCase(rs.getString("Password"))) {
                        JOptionPane.showMessageDialog(null, "Masuk Berhasil");
                        x = 1;
                        break;
                    }
                }
            }

            if (x == 1) {
                HomeAdmin b = new HomeAdmin();
                b.setVisible(true);

            } else {
                JOptionPane.showMessageDialog(null, "Masuk Gagal");

                DaftarAplikasi da = new DaftarAplikasi();
                da.setVisible(true);

            }

            ps.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
        }
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

//the getUsername and getPassword goes null

您的 getUserName() 即將為空,因為您用來比較的對象沒有分配給它的 userName 值。

 public void jalankan() {

       //creating an object here , br has no username assigned
        loginAdminn br = new loginAdminn();

        String kueri = "Select Username, password from Admin";

        int x = 0;

        try {
            ps = conn.prepareStatement(kueri);
            ResultSet rs = ps.executeQuery();

            while (rs.next()) {

                if (br.getUsername().equalsIgnoreCase(rs.getString("Username"))) {
                    if (br.getPassword().equalsIgnoreCase(rs.getString("Password"))) {
                        JOptionPane.showMessageDialog(null, "Masuk Berhasil");
                        x = 1;
                        break;
                    }
                }
            }

當您閱讀 br.getUserName() 時,它應該給您 null。

A級

String  x;

setter getter x

A c = new A();   
c.get...    // object Class A type X

B級

A c = new A();  
c.get...    // object Class B type X

c.get from Class A   !=   c.get from Class B

基本上通過使用new你創建了兩個相互獨立的對象!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM