változékony vs változhatatlan Java

változékony vs változhatatlan

változtatható vs megváltoztathatatlan

különbség a változtatható vs megváltoztathatatlan Java között

a változtatható objektumoknak vannak módosítható mezői, a megváltoztathatatlan objektumoknak nincs olyan mezője, amely megváltoztatható az objektum létrehozása után. A megváltoztathatatlan objektumok olyan objektumok, amelyek állapota nem változhat a létrehozásuk után. A változható és megváltoztathatatlan objektumok két kategóriája a java-ban. Ebben a cikkben látni fogjuk a különbségeket a változékony és megváltoztathatatlan objektumok között a java-ban. Ezenkívül látni fogjuk a java kód példáit, amelyek a változékony és megváltoztathatatlan osztály közötti különbségeket mutatják a java-ban.

Head to Head összehasonlítása változékony vs változhatatlan Java (Infographics)

az alábbiakban a top 6 közötti különbségek változékony vs változhatatlan Java:

indítsa el az ingyenes szoftverfejlesztési tanfolyamot

Webfejlesztés, programozási nyelvek, szoftvertesztelés & egyéb

változékony vs változhatatlan információ

változékony vs megváltoztathatatlan info

a változékony vs megváltoztathatatlan Java főbb különbségei

az alábbiakban bemutatjuk a változékony és megváltoztathatatlan objektumok közötti legfontosabb különbségeket a Java-ban:

  • A változtatható objektumok azok az objektumok, amelyekben új objektum létrehozása nélkül módosíthatjuk az objektum állapotát. Ez egy változtatható objektum lehet módosítani létrehozása után. Megváltoztathatatlan objektumok esetén, amikor egy objektum állapota megváltozik, új objektumot kapunk. Miközben változatlan tárgyakkal foglalkozunk, nem szabad megváltoztatnunk egy objektum állapotát annak létrehozása után.
  • a változékony objektumok általában olyan módszereket biztosítanak, amelyeken keresztül az objektumok tartalma megváltoztatható, míg a változhatatlan objektumok nem nyújtanak semmilyen módszert a tartalmuk megváltoztatására.
  • a változó java osztályokban getter és setter metódusok vannak jelen, míg a változhatatlan osztályokban csak getter metódusok állnak rendelkezésre, setter metódusok nem.
  • A változtatható osztályok lehetnek szálbiztonságosak vagy nem, míg a megváltoztathatatlan osztályok alapértelmezés szerint szálbiztonságosak.
  • A Java változékony osztályainak példái a java.util.Dátum, StringBuffer, StringBuilder, stb Mivel java legacy osztályok, wrapper osztályok, String osztály példák megváltoztathatatlan osztályok java.

változékony vs változhatatlan Java összehasonlító táblázat

beszéljük meg a változékony vs változhatatlan Java legjobb összehasonlítását:

változékony

változhatatlan

Java változtatható objektum lehet módosítani létrehozása után. a Java változhatatlan objektum létrehozása után nem módosítható.
nem jön létre új objektum, ha egy meglévő objektumon változtatásokat hajtanak végre. amikor egy meglévő objektum megváltozik, új objektum jön létre.
módszereket biztosít az objektum tartalmának megváltoztatására. nem nyújt módszereket az objektum tartalmának megváltoztatására.
a Getter és a setter módszerek változékony osztályokban vannak jelen. csak getter metódusok vannak jelen, szetter metódusok nem.
változtatható osztályok lehet, hogy nem szál-biztonságos. a megváltoztathatatlan osztályok alapértelmezés szerint szálbiztonságosak.
néhány gyakori példa a változékony osztályokra a Java-ban StringBuffer, Stringbuilderés java.util.Randi. minden örökölt osztály, Wrapper osztály, String osztály a változhatatlan osztályok gyakori példái a java-ban.

változékony és megváltoztathatatlan Java példákkal

a változékony és megváltoztathatatlan Java példákkal az alábbiakban találhatók:

1.példa – változtatható osztály a Java-ban

most látni fogjuk a java kód példáit, amelyek bemutatják a változtatható és megváltoztathatatlan osztályok létrehozását a java-ban.

Kód:

package com.edubca.mutabledemo;
public class MutableDemo {
private String studentName;
private int rollNumber;
MutableDemo (String studentName, int rollNumber) {
this.studentName = studentName;
this.rollNumber = rollNumber;
}
public String getStudentName() {
return studentName;
}
// this setter can modify the name
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public int getRollNumber() {
return rollNumber;
}
// this setter can modify roll number
public void setRollNumber(int rollNumber) {
this.rollNumber = rollNumber;
}
public static void main(String args) {
MutableDemo obj = new MutableDemo ("John" , 100);
System.out.println("Original Name is " + obj.getStudentName());
System.out.println("Original Roll Number is " + obj.getRollNumber());
// update the name, and roll number as is mutable
obj.setStudentName("James");
obj.setRollNumber(102);
System.out.println("Modified Name is " + obj.getStudentName());
System.out.println("Modified Roll Number is " + obj.getRollNumber());
}
}

kimenet:

változékony vs változhatatlan Java-1.1

változékony vs változhatatlan Java-1.1

a fenti kód egy változtatható osztály létrehozását mutatja be Java-ban getterekkel és szetterekkel.

2.példa – megváltoztathatatlan osztály a Java-ban

most meglátjuk, hogyan hozhatunk létre megváltoztathatatlan osztályokat a Java-ban.

Kód:

package com.edubca.immutabledemo;
public final class ImmutableDemo {
final String studentName;
final int rollNumber;
public ImmutableDemo (String studentName, int rollNumber) {
this.studentName = studentName;
this.rollNumber = rollNumber;
}
public String getStudentName() {
return studentName;
}
public int getRollNumber() {
return rollNumber;
}
public static void main(String args) {
ImmutableDemo obj = new ImmutableDemo ("John" , 100);
// Since no getters are available contents cannot be modified.
// Also as variables are declared final they cannot be modified
System.out.println("Name is " + obj.getStudentName());
System.out.println("Roll Number is " + obj.getRollNumber());
}
}

kimenet:

változékony vs változhatatlan Java-1.2

változékony vs változhatatlan Java-1.2

a fenti kód a java változhatatlan osztály létrehozását mutatja. A megváltoztathatatlan osztály létrehozásakor a következő pontokat kell szem előtt tartani:

  • a megváltoztathatatlan osztálynak véglegesnek kell lennie, mivel nem örökölhető.
  • egy megváltoztathatatlan osztály minden mezőjét véglegessé kell tenni.
  • ha bármilyen változtatható objektumot használnak mezőként egy megváltoztathatatlan osztályban, akkor speciális kezelést kell végrehajtani annak tartalmának módosítása érdekében.
  • egy nyilvános konstruktornak jelen kell lennie.
  • Getter metódusokat kell meghatározni az összes változóhoz.
  • A szetter metódusok nem lehetnek jelen egyetlen változónál sem.

következtetés

a fenti megbeszélésből világosan megértjük a java változékony és megváltoztathatatlan közötti különbségeket. Emellett láttunk java példákat is, amelyek megmutatják, hogy a változékony és megváltoztathatatlan osztályok hogyan jönnek létre. Fontos megjegyezni, hogy a megváltoztathatatlan osztályok alapértelmezés szerint szálbiztonságosak, míg a változtatható osztályok szálbiztonságosak lehetnek vagy nem.

ajánlott cikkek

ez egy útmutató a változékony vs változhatatlan Java. Itt is megvitatják a változékony vs változhatatlan Java kulcsfontosságú különbségek infographics és Összehasonlító táblázat. További információkért tekintse meg a következő cikkeket is–

  1. Java BufferedReader
  2. StringBuffer osztály a Java-ban
  3. Java RuntimeException
  4. Java newInstance()
0 részvények

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.