使用可行的帐户的getter和setter函数?

时间:2019-03-08 12:49:33

标签: java oop getter-setter

我正在做一个涉及创建帐户的程序,我需要创建一个程序,以便它将扫描特定数据以执行分配的命令。 getter和setter函数适合吗?

public class Account {

    //data
    private int userId;
    private String password;
    private char type;

    public Account(int userId, String password, char type) {
        this.userId = userId;
        this.password = password;
        this.type = type;
    }

    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    public String getPassword() {
        return password;
    }

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

    public char getType() {
        return type;
    }

    public void setType(char type) {
        this.type = type;
    }


    //methods
    public boolean verifyLogin(int usrid , String pass)
    {
      if((usrid == userId) & (pass == password)){
          return true;
      }  
      else{
        return false;
    }
}

2 个答案:

答案 0 :(得分:2)

您的getter和setter方法可以很好地访问此类数据。

您需要特别注意的是如何检查密码是否正确。

在实现中,您使用pass == password比较两个字符串。这是不正确的,您应该使用pass.equals(password)

答案 1 :(得分:1)

看起来不错,但是您需要重新考虑是否需要一些值的设置器。在示例中,用户ID会以某种方式更改不是很常见的用例。如果要保持持久性,则不需要setter。在构造函数中设置一次。

此外,您还可以查看Lombok Project和@Getter&@Setter批注。它将您的代码最小化为3行。