Junior — Middle
Կարո՞ղ է Java-ում օգտագործել հավաքածու տարբեր տիպերի տարրեր պահելու համար։
sobes.tech AI
Պատասխան AI-ից
Java-ում հավաքածուները սովորաբար պարամետրիզացված են տարրերի տիպով (generics), օրինակ, List<String> պահում է միայն տողեր: Սակայն, հնարավոր է օգտագործել հավաքածու Object տիպով՝ տարբեր տիպերի տարրեր պահելու համար:
List<Object> խառըՑուցակ = new ArrayList<>();
խառըՑուցակ.add("տող");
խառըՑուցակ.add(123);
խառըՑուցակ.add(new Person("Աննա", 25));
Բայց այս մոտեցումը նվազեցնում է տիպային անվտանգությունը և պահանջում է բացահայտ տիպափոխումներ տարրերը հանելու ժամանակ: Հետևաբար, խորհուրդ է տրվում օգտագործել կոնկրետ տիպով հավաքածուներ, և տարբեր տիպեր պահելու համար՝ ստեղծել ընդհանուր դասեր կամ օգտագործել ինտերֆեյսներ/աբստրակտ դասեր, որոնք միավորում են այդ տիպերը։