Допустим, у меня в java есть класс Employee , который выглядит примерно так
public class Employee {
private String empName;
private int empId;
public String getEmpName() {
return empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
}
Теперь я хочу использовать этот объект в неизменном классе, скажем, компании вследующий формат.и условие состоит в том, что я не могу изменить
public final class Company {
final String companyName;
final Employee employee;
public Company(String companyName, Employee employee) {
this.companyName = companyName;
this.employee = employee;
}
public String getCompanyName() {
return companyName;
}
public Employee getEmployee() {
return employee;
}
}
Поэтому мой вопрос заключается в том, является ли это правильным способом сделать класс Company неизменным, когда я ссылаюсь на внутренний объект, который можно изменить?