Hvor skal jeg bruke uforanderlige objekter?

Innholdsfortegnelse:

Hvor skal jeg bruke uforanderlige objekter?
Hvor skal jeg bruke uforanderlige objekter?
Anonim

Uforanderlige objekter kan være nyttige i multi-threaded applications. Flere tråder kan virke på data representert av uforanderlige objekter uten bekymring for at dataene endres av andre tråder. Uforanderlige objekter anses derfor som mer trådsikre enn foranderlige objekter.

Hva er vitsen med uforanderlige objekter?

Maksimal avhengighet av uforanderlige objekter er allment akseptert som en god strategi for å lage enkel, pålitelig kode. Uforanderlige objekter er spesielt nyttige i samtidige applikasjoner. Siden de ikke kan endre tilstand, kan de ikke bli ødelagt av trådinterferens eller observert i en inkonsekvent tilstand.

Hvilke objekter bør kalles uforanderlige?

Uforanderlige objekter er ganske enkelt objekter hvis tilstand (objektets data) ikke kan endres etter konstruksjon. Eksempler på uforanderlige objekter fra JDK inkluderer streng og heltall. Uforanderlige objekter forenkler programmet ditt betydelig, siden de: er enkle å konstruere, teste og bruke.

Hvordan implementerer du et uforanderlig objekt?

For å lage et uforanderlig objekt må du følge noen enkle regler:

  1. Ikke legg til noen settermetode.
  2. Erklær alle felt endelige og private.
  3. Hvis et felt er et objekt som kan endres, kan du lage defensive kopier av det for getter-metoder.
  4. Hvis et mutbart objekt som sendes til konstruktøren må tilordnes til et felt, lag en defensiv kopi av det.

Hvor skal vibruke uforanderlig klasse i Java?

Uforanderlige klasser gjør samtidig programmering enklere. Uforanderlige klasser sørger for at verdier ikke endres midt i en operasjon uten å bruke synkroniserte blokker. Ved å unngå synkroniseringsblokker unngår du vranglåser.

Anbefalt: