Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.
Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin. Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Javada Mutable va immutable obyeklarni nima farqi bor?

+4 ovoz
89 marta ko‘rilgan
so‘radi 14 dekabr, 16 Unknown (803 bal)
Assalomu Alaykum.

 Javada Mutable va immutable obyeklarni nima farqi bor?

1 ta javob

+2 ovoz
javob berdi 14 dekabr, 16 vejon (2,992 bal)
tahrirlandi 14 dekabr, 16 oakrom
 
Eng yaxshi javob
Mutable obyektlar -  o'zgara oladigan o'zgaruvchilari bor obyektlardir.
Immutable obyektlar - obyekt yaratilgandan so'ng o'zgaruvchilarini o'zgartirib bo'lmaydigan obyektlardir.

Quyida misollar keltirildi:
1-misol:

class Mutable{
  private int value;

  public Mutable(int value) {
     this.value = value;
  }

  //qiymat olish va berish methodlari(getter and setter methods)
}

class Immutable {
  private final int value;

  public Immutable(int value) {
      //Konstruktorda qiymatni o'rnatish.
      //1-marta o'rnatilib, shu bilan qiymat o'zgarmaydi
     this.value = value;
  }

  //faqat o'zgaruvchini olish methodlari ishlaydi (only getter)
}

2-misol: Javadagi String obyekt(yoki toifasi) ham immutable hisoblanadi.

String str= "abc";//Stringni obyekti(ya'ni str) yaratildi str = str + "def";//yangi Stringni obyekti qaytadan yaratildi, avvalgi qiymatidan foydalanilgan holda

3-misol:
    Point myPoint = new Point( 0, 0 );//mutable obyekt
    System.out.println( myPoint );
    myPoint.setLocation( 1.0, 0.0 );
    System.out.println( myPoint );

    String myString = new String( "old String" );//immutable obyekt
    System.out.println( myString );
    myString.replaceAll( "old", "new" );
    System.out.println( myString );

natijasi:
java.awt.Point[0.0, 0.0]
java.awt.Point[1.0, 0.0]
old String
old String

http://stackoverflow.com/a/4658502/4365315
izoh qoldirdi 14 dekabr, 16 Unknown (803 bal)
Rahmat. codelarni pretty snippet qilinsa zo'r bo'lardi

Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.

Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin.

Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Telegram kanal YordamUzRss

...