Mustaqil ish Mavzu: Java Generics


Endi quyidagi usulni ko'rib chiqing


Download 312.82 Kb.
bet5/5
Sana06.04.2023
Hajmi312.82 Kb.
#1335115
1   2   3   4   5
Bog'liq
Mustaqil ish1 TDA

Endi quyidagi usulni ko'rib chiqing:

public void boxTest(Box n) { /* ... */ }

U qanday argumentni qabul qiladi? Uning imzosiga qarab, u Box turi bo'lgan bitta argumentni qabul qilishini ko'rishingiz mumkin . Lekin bu nimani anglatadi? Siz kutganingizdek Box yoki Box ga o'tishga ruxsat berilganmi ? Javob "yo'q", chunki Box va Box Box ning pastki turlari emas .

Bu generiklar bilan dasturlash haqida gap ketganda keng tarqalgan tushunmovchilik, ammo bu o'rganish uchun muhim tushunchadir.

Eslatma: A va B ikkita aniq turlarini hisobga olgan holda (masalan, Son va butun son ), MyClass  ning MyClass ga aloqasi yo'q, A va B bog'liqmi yoki yo'qligidan qat'inazar . MyClass va MyClass ning umumiy ota-onasi Ob'ekt hisoblanadi .

Eslatma: A va B ikkita aniq turlarini hisobga olgan holda (masalan, Son va butun son ), MyClass  ning MyClass ga aloqasi yo'q, A va B bog'liqmi yoki yo'qligidan qat'inazar . MyClass va MyClass ning umumiy ota-onasi Ob'ekt hisoblanadi .

Xulosa qilib shuni aytish mumkinki, Generics ishlatadigan dasturlar umumiy bo'lmagan kodga nisbatan ko'p afzalliklarga ega ekanligini bilib oldik.Generics kodni qayta ishlatishga yordam berishi Java-dagi generiklar yordamida biz har xil turdagi ma'lumotlar bilan ishlaydigan kod yozishimiz mumkin ekan. Umumiy algoritmlardan foydalanib, biz har xil turdagi ob'ektlarda ishlaydigan algoritmlarni amalga oshirishimiz mumkin va shu bilan birga, ular ham xavfsizdir.

Foydalanilgan adabiyotlar

Foydalanilgan adabiyotlar

  • https://javarush.ru/groups/posts/2004-teorija-dzhenerikov-v-java-ili-gde-na-praktike-stavitjh-skobki
  • https://docs.oracle.com/javase/tutorial/java/generics/inheritance.html
  • https://docs.oracle.com/javase/tutorial/java/generics/inheritance.html
  • https://www.geeksforgeeks.org/generics-in-java/#:~:text=Generics%20means%20parameterized%20types.,work%20with%20different%20data%20types.

Download 312.82 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling