JavaBean完整指南:轻松掌握对象封装与数据管理技巧
public class User {
private String name;
private int age;
public User() {}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Account {

private String accountNumber;
private double balance;
private boolean active;
public String getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber;
}
public double getBalance() {
return balance;
}
public void setBalance(double balance) {
this.balance = balance;
}
public boolean isActive() {
return active;
}
public void setActive(boolean active) {
this.active = active;
}
}
public class UserForm {
private String username;
private String password;
private String email;
private String phone;
private Date birthDate;
private String gender;
// 标准的getter和setter
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; }
// 其他getter/setter...
// 业务验证方法
public boolean isValid() {
return username != null && !username.trim().isEmpty() &&
email != null && email.contains("@") &&
password != null && password.length() >= 6;
}
// 数据转换方法
public User toEntity() {
User user = new User();
user.setUsername(this.username);
user.setEmail(this.email);
user.setPasswordHash(PasswordUtil.hash(this.password));
user.setCreateTime(new Date());
return user;
}
}

public class TransactionRecord implements Serializable {
private static final long serialVersionUID = 2023112701L;
private String transactionId;
private String fromAccount;
private String toAccount;
private BigDecimal amount;
private Currency currency;
private TransactionStatus status;
private Date transactionTime;
private transient String sensitiveData; // 不参与序列化
// 构造器和getter/setter...
// 自定义序列化逻辑
private void writeObject(java.io.ObjectOutputStream out)
throws IOException {
out.defaultWriteObject();
// 序列化前可以做一些清理或加密
this.sensitiveData = null;
}
private void readObject(java.io.ObjectInputStream in)
throws IOException, ClassNotFoundException {
in.defaultReadObject();
// 反序列化后的初始化工作
if (this.transactionTime == null) {
this.transactionTime = new Date();
}
}
}
免责声明:本网站部分内容由用户自行上传,若侵犯了您的权益,请联系我们处理,谢谢!联系QQ:2760375052





