Junior — Middle
89
Объектілердің өзгермейтіндігі не білдіреді және оның артықшылықтары мен кемшіліктері қандай?
AI-дан жауап
sobes.tech AI
Объектілер өзгермейтін (immutable) деп саналады, егер оларды құрғаннан кейін олардың күйі өзгертілмесе — барлық өрістер тұрақты болып қалады.
Артықшылықтары:
- Жол қауіпсіздігі: өзгермейтін объектілер көп ағынды ортада синхрондаусыз қолданылуы мүмкін.
- Қарапайымдылық: тұрақты күй қателер санын азайтады.
- Кэштеу және қайта пайдалану: өзгермейтін объектілер қауіпсіз түрде сақталып, тасымалдануы мүмкін.
Кемшіліктері:
- Өнімділік: объектіні өзгерту үшін жаңа объект құру керек, бұл қосымша жад пен уақыт шығынын тудыруы мүмкін.
- Икемділік: кейде ыңғайсыз, әсіресе объект жиі өзгертілсе.
Java-да өзгермейтін объектілер әдетте:
finalөрістерді қолдану- сеттерлердің болмауы
- барлық өрістерді конструктор арқылы инициализациялау
Мысал:
public final class Person {
private final String name;
private final int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() { return name; }
public int getAge() { return age; }
}
Мұндай объектіні құрғаннан кейін өзгерту мүмкін емес.