Razvoj & Middleware
-
-
45'
Tema je kovarijanca ne-generičkih parametara u jezicima PL/SQL, C++, Eiffel, Java, Scala, Kotlin (osim PL/SQL-a, redoslijed ostalih jezika je redoslijed njihovog pojavljivanja).U primjeru se kovarijanca pokušava primijeniti kod dva povezana para nadklasa / podklasa. U konkretnom slučaju to su klase su Zivotinja / Krava i Hrana / Trava.U jednoj proceduri klase Zivotinja nalazi se parametar klase Hrana.Možemo li (u gore navedenim jezicima) u podklasi Krava napraviti nadjačanu proceduru koja koristi klasu Trava, umjesto klase Hrana?Jedan jezik imao je tu mogućnost od početka (kraj 80-ih), ali je ta mogućnost omogućavala runtime grešku, što je riješeno tek 2015.No postoji još jedan jezik (među gore navedenim jezicima) koji to omogućava.Napomena: upotreba generičkih parametara (i njihova kovarijanca) nije "pravo" rješenje (to je rješenje, ali s velikim praktičnim manama).