1ste semester
1 Hoofdstuk 10 Technieken voor verdure abstracties
1.1 Simulaties
Simulatie moet evenwicht zoeken.
1.2 Vossen en konijnen
Interessante code:
view.setColor(Fox.class, Color.ORANGE);
1.3 Abstracte klassen
= Een abstracte klasse is een klasse die niet bedoeld is om instanties van te maken en dient als
superklasse voor andere klassen. Abstracte klassen kunnen abstracte methodes bevatten.
Klassen die niet abstract zijn worden concrete klassen genoemd.
Klassen definiëren we abstract door het woordje abstract in de klassenheader te plaatsen
Abstracte klasse kan ook als type gebruikt worden
Public abstract class Animal {}
Het abstract definiëren van klassen heeft gevolgen:
o Van abstracte klassen kunnen geen instanties worden gemaakt
o New in combinatie met een abstracte klasse kan niet
o Alleen abstracte klassen kunnen abtsracte methodes hebben
o Abstracte klassen met abstracte methodes zorgen ervoor dat subklassen de abstracte methodes
overschrijven
o Als een subklasse geen implementatie heeft voor een bepaalde abstracte methode is ze zelf
abstract
Doel van abstract klasse:
o Leveren geen implimentaties
o Garanderen wel dat alle subklassen een implementatie voor deze methoden hebben
1.3.1 Abstracte methods
= De definitie van een abstracte methode bestaat uit een methodeheader zonder methodebody. De
definitie is herkenbaar aan het gebruik van het begrip abstract.
public abstract void act (List newAnimals);