denne artikel viser dig forskellen mellem foranderlige og uforanderlige objekter i Java
1. Mutable object – du kan ændre tilstande og felter, når objektet er oprettet. For eksempler: StringBuilder
, java.util.Date
og etc.
2. Uforanderligt objekt – du kan ikke ændre noget, når objektet er oprettet. Eksempel: String
, boksede primitive objekter som Integer
, Long
og osv.
Java Mutable eksempel
normalt giver det en metode til at ændre feltværdien, og objektet kan udvides.
udgang
mkyongnew mkyong
Java uforanderligt eksempel
for at oprette et uforanderligt objekt skal du gøre klassen endelig og ikke give nogen metoder til at ændre felterne.
Output
mkyong
uforanderligt objekt er enkelt, trådsikkert (ikke nødvendigt synkronisering), mindre tilbøjelig til fejl og mere sikker. Hvis det er muligt, gør alle objekter uforanderlige.
P. S se den effektive Java – bog-punkt 15: Minimer mutabilitet.
- Mutable vs immutable objects
- Immutable objects as per java docs
mkyong
grundlægger af Mkyong.com Jeg elsker Java og open source. Følg ham på Facebook. Hvis du kan lide mine tutorials, overveje at give en donation til disse velgørenhedsorganisationer.