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 |