?????嵥 4. ?? volatile ????????????????????????

 

public class UserManager {
public volatile String lastUser;
public boolean authenticate(String user?? String password) {
boolean valid = passwordIsValid(user?? password);
if (valid) {
User u = new User();
activeUsers.add(u);
lastUser = user;
}
return valid;
}
}

????????????????????????????????????????????????????????????????????????????????????ж???????????????????????????Ч?????? —— ???????????????????????????????????????????????????仯??
?????? #4??“volatile bean” ??
????volatile bean ????????? JavaBeans ???“??????”????????? volatile bean ???У?JavaBean ???????????? getter ??/?? setter ???? ????????????????volatile bean ????????????????????????????????????? HttpSession?????????????????????Щ?????е?????????????????
?????? volatile bean ???У?JavaBean ???????????????? volatile ?????????? getter ?? setter ????????????? —— ???????????????????????????????κ?????????????????????????????????????????????Ч????????????????????????????????????????????????? volatile ??????????????????鱾????? volatile ???壩???????κ? volatile ????????????????????????? JavaBean ??????嵥 5 ?е???????????? volatile bean ???? JavaBean??
?????嵥 5. ???? volatile bean ???? Person ????

@ThreadSafe
public class Person {
private volatile String firstName;
private volatile String lastName;
private volatile int age;
public String getFirstName() { return firstName; }
public String getLastName() { return lastName; }
public int getAge() { return age; }
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public void setAge(int age) {
this.age = age;
}
}