Sobes.tech
Junior

Nima referens turlari ma'lumotlar?

sobes.tech AI

AIdan javob

Manba ma'lumot turlari o'z qiymatini emas, balki u qiymat saqlangan joyga (xotira manzili) havolani saqlaydi. Bunday ma'lumotlarni tayinlash yoki o'tkazishda, faqat havola nusxalanadi, butun ob'ekt emas. Bir havola orqali kiritilgan o'zgarishlar, boshqa havolalar orqali kirilganda ko'rinadi, ular bir xil ob'ektga ishora qiladi.

Turli tillarda manba ma'lumot turlariga misollar:

  • Java: Sinflar (String, Object, shaxsiy sinflar), interfeyslar, massivlar.
  • C#: Sinflar (string, object, shaxsiy sinflar), interfeyslar, delegatlar, massivlar.
  • Python: Barcha ma'lumot turlari (ro'yxatlar, lug'atlar, tuplar, to'plamlar, sinflar, funksiyalar).
# Python'da misol
list1 = [1, 2, 3]
list2 = list1  # list2, list1 bilan bir xil ro'yxatga ishora qiladi

list2.append(4)

print(list1)  # Chiqish: [1, 2, 3, 4]
print(list2)  # Chiqish: [1, 2, 3, 4]

Qiymat turlaridan farqi shundaki, qiymat turlari o'z qiymatini saqlaydi, va tayinlash yoki o'tkazishda, butun qiymat nusxalanadi.

Taqqoslash misoli:

Xususiyat Qiymat turlari Manba turlari
Saqlash O'z qiymati Qiymatga havola
Tayinlash/o'tkazish Qiymat nusxasi Havola nusxasi
O'zgartirish Aslga ta'sir qilmaydi Aslga ta'sir qiladi
Misol (C#) int, struct, enum class, interface, array