Typesystemen
11 belangrijke vragen over Typesystemen
Geef een omschrijving van het begrip ad-hoc-polymorfie
Geef een omschrijving van het begrip overloading
Geef een omschrijving van het begrip coërcie
- Hogere cijfers + sneller leren
- Niets twee keer studeren
- 100% zeker alles onthouden
Geef een omschrijving van het begrip parametrische polymorfie
Geef een omschrijving van het begrip overerving
Bij inclusiepolymorfie werken functies behalve op het type waarop ze zijn gedefinieerd, ook op subtypen daarvan.
Dit is een vorm van polymorfie die vooral in objectgeoriënteerde talen toegepast wordt
Geef een omschrijving van het begrip contravariantie
In het algemeen is het echter mogelijk in een subklassetype een methode zodanig te herdefinieren dat ook haar type wijzigt, mits er aan de volgende voorwaarden is voldaan:
- het nieuwe resultaatype is een subtype van het oorspronkelijke resultaattype (covariante wijziging van het resultaattype)
- Het nieuwe parametertype is een subtype van het oorspronkelijke parametertype (contravariante wijziging van het parametertype.
Als we methoden op deze wijze in een subklassetype herdefinieren, is de typeveiligheid statisch gegarandeerd
Leg het verschil uit tussen contextafhankelijke en contextonafhankelijke overloading en geef van beide vormen een voorbeeld
context-onafhankelijk: typen van de argumenten bepalen de operatie
context-afhankelijk: ook het verwachte type van het functieresultaat bepaalt de operatie
Polymorfe abstractie (functie)
Abstractie (functie) met een polymorf type, die dus mag worden toepgepast op parameters van verschillende typen, die echter een bepaalde structuur gemeen hebben.
[T8.2.1]
Leg het voordeel uit van parametrische polymorfie ten opzichte van monomorfie
Karakteriseer de waardenverzameling van een polymorf type
Bijvoorbeeld de functie:
Le07> : type fromInteger
fromInteger:: Num a => Integer -> a
Het resultaat van de functie is dus een waarde van een type dat behoort tot de klasse Num, te weten INt, INteger, Float, Doble of Rational
Geef aan in welke mate subtypering voorkomt in Java en welke gevolgen dit heeft voor de typecontrole
De vragen op deze pagina komen uit de samenvatting van het volgende studiemateriaal:
- Een unieke studie- en oefentool
- Nooit meer iets twee keer studeren
- Haal de cijfers waar je op hoopt
- 100% zeker alles onthouden