我有兩個類:一個Generator類和一個SystemManagement類。發生器類,我可以生成密碼。 SystemManagement類導入Generator(來自另一個包)幷包含附加信息。爲什麼我的方法返回空密碼?
當我製作SystemManagement對象並調用getPassword()
時,我找回了null
。這是爲什麼發生?
發電機:
public class Generator {
private static String password;
private static Generator instance;
public String nextPassword() {
char[] allowedCharacters = {'a', 'b', 'c', 'd', 'e', 'f', '1', '2', '3', '4', '5','6'};
SecureRandom random = new SecureRandom();
StringBuffer password1 = new StringBuffer();
for (int i = 0; i < password1.length(); i++) {
password1.append(allowedCharacters[random.nextInt(allowedCharacters.length)]);
}
password = password1.toString();
return password;
}
public String currentPassword() {
return password;
}
public static void setPassword(String password) {
Generator.password = password;
}
public static Generator getInstance() {
if (instance == null) {
instance = new Generator();
}
return instance;
}
}
SystemManagement:
public class SystemManagement implements Serializable {
private String name;
private String family;
private String password;
public SystemManagement() {
}
public SystemManagement(String password) {
this.password = Generator.getInstance().nextPassword();
}
public Students addStudent(String name, String family) {
Students student = new Students(name, family);
students.add(student);
return student;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
杜佩:http://stackoverflow.com/questions/1769962/why-am-i-getting-null-on-this-code – BalusC 2009-11-20 14:56:01
這是怎麼連接到FindBugs的? – 2009-11-20 20:51:24