在Java程序中调用同一个类中的setter / getter

时间:2016-10-11 22:22:30

标签: java

我正在努力尝试使用我在java文件中编码的setter / getters。基本上它应该如何工作是setPassword() setter应该测试密码是否包含数字和字母,并且长度至少为8个字符。

我的代码中收到错误的部分如下:

public boolean setPassword(String password1){
    int temp = password1.length();
    boolean length = false;
    boolean number = password1.hasAlphabet(); //hasAlphabet is undefined for type String
    boolean letter = password1.hasNumber(); //hasNumber is undefined for type String
    if(temp >= 8){
        if(number){
        if(letter){
        password = password1;
}
}   

    }
    else return false;
}
private boolean hasAlphabet(String password1){ //hasAlphabet is never used locally
      if(password1.matches("%[a-zA-Z]%")){
      return true;
      }
      else return false;
}
private boolean hasNumber(String password1){//hasNumber is never used locally
    if(password1.matches(".*\\d.*")){
          return true;
    }

我的一些变量在代码中已经定义过,因此没有错误。我把注释中的错误放在有错误的行上。

1 个答案:

答案 0 :(得分:2)

您在字符串实例password1.hasAlphabet()上调用您的方法,这是错误的语法。 Java的String类必须定义一个hasAlphabet()方法才能工作。

您应该将字符串作为参数传递给您的方法。

boolean letter = hasAlphabet(password1);