首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么在调用另一个类时getter方法为空?

为什么在调用另一个类时getter方法为空?
EN

Stack Overflow用户
提问于 2017-05-07 04:05:25
回答 2查看 534关注 0票数 0

但是在另一个类的set方法中,当我得到的值是存在的,所以我有3个类--第一类是getter setter类,第二个类是填充集合的类,最后一个类是获取方法getter的类,但是它是空值.

代码语言:javascript
运行
复制
        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
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-17 15:19:30

A类

代码语言:javascript
运行
复制
String  x;

setter getter x

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

B类

代码语言:javascript
运行
复制
A c = new A();  
c.get...    // object Class B type X

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

基本上,通过使用new,您可以创建两个相互独立的对象!

票数 0
EN

Stack Overflow用户

发布于 2017-05-07 04:23:34

您的getUserName()将为空,因为用于比较的对象没有分配给它的userName值。

代码语言:javascript
运行
复制
 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。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43827700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档