Sisällysluettelo:

Onko Date-objekti muunnettavissa Javassa?
Onko Date-objekti muunnettavissa Javassa?

Video: Onko Date-objekti muunnettavissa Javassa?

Video: Onko Date-objekti muunnettavissa Javassa?
Video: ELK: Elasticsearch, logstash, beats (Часть 1) / Java Tech Talk 2024, Saattaa
Anonim

A muuttuva objekti on yksinkertaisesti an esine joka voi muuttaa tilaansa rakentamisen jälkeen. Esimerkiksi StringBuilder ja Päivämäärä ovat muuttuvia esineitä , kun taas merkkijono ja kokonaisluku ovat muuttumattomia esineitä . Luokassa voi olla a muuttuva objekti kenttänä.

Samoin, onko Date-luokka muuttumaton Javassa?

Päivämäärä ei ole muuttumaton , meidän on tehtävä puolustava kopio java . util. Päivämäärä -kenttään palauttaen viittauksen tähän ilmentymämuuttujaan. Luodaan hypoteettinen henkilö luokkaa jonka nimi ja sukunimi ovat ainoat kaksi jäsentä.

Myöhemmin kysymys kuuluu, mikä on muuttumaton objekti Javassa? Muuttumattomat esineet ovat esineitä jotka eivät muutu. Sinä teet ne, et voi muuttaa niitä. A Muuttumaton Java-objekti kaikkien sen kenttien on oltava sisäisiä, yksityisiä lopullisia kenttiä. Se ei saa ottaa käyttöön asettajia. Se tarvitsee rakentajan, joka ottaa arvon jokaiselle yksittäiselle kentälle.

Ovatko objektit muutettavissa Javassa?

Muuttumattomat esineet ovat yksinkertaisesti esineitä jonka osavaltio ( esineitä tiedot) eivät voi muuttua rakentamisen jälkeen. Esimerkkejä muuttumattomia esineitä JDK:sta ovat merkkijono ja kokonaisluku. Muuttuvat objektit on kenttiä, joita voidaan muuttaa, muuttumattomia esineitä ei ole kenttiä, joita voidaan muuttaa jälkeen esine on luotu.

Kuinka saada objekti muuttuvaksi Javassa?

Muuttumaton luokka Javassa

  1. Ilmoita luokka lopulliseksi, jotta sitä ei voida jatkaa.
  2. Aseta kaikki kentät yksityisiksi, jotta suora pääsy ei ole sallittu.
  3. Älä anna muuttujille asetusmenetelmiä.
  4. Tee kaikki muutettavat kentät lopullisiksi, jotta sen arvo voidaan määrittää vain kerran.
  5. Alusta kaikki kentät rakentajan avulla, joka suorittaa syväkopiointia.

Suositeltava: