Overerving (inheritance) - NLDA-TW

January 8, 2018 | Author: Anonymous | Category: Engineering & Technology, Informatica, Java Programming
Share Embed Donate


Short Description

Download Overerving (inheritance) - NLDA-TW...

Description

Herhaling Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden. De basisbouwsteen is het object; een geïntegreerde eenheid van data en operaties werkend op deze data. Objecten bieden de opgeslagen data bescherming, laten zich makkelijk combineren tot softwaresystemen en zijn goed in isolatie te begrijpen. Objecten zijn gegroepeerd in klassen. Java is een voorbeeld van een pure objectgeoriënteerde programmeertaal.

Overerving (inheritance) Eén van de belangrijkste eigenschappen van objectgeoriënteerde talen is de mogelijkheid tot overerving. Hierbij is het mogelijk nieuwe klassen te definiëren als uitbreiding op een bestaande klasse. Voorbeeld class Employee { protected String name; protected int phone; public Employee(String name, int phone) { this.name = name; this.phone = phone; } @Override public String toString() { return name + " phone: " + phone; } }

Overerving (inheritance) class Manager extends Employee { private List employees; public Manager(String name, int phone) { super(name,phone); employees = new ArrayList(); } public void addEmployee(Employee employee) { employees.add(employee); } public List getEmployees() { return employees; } @Override public String toString() { String result = name + " phone: " + phone + "\nEmployees:\n"; for (Employee employee : employees) { result += " " + employee + "\n"; } return result; } }

Manager erft van Employee en is dus een uitbreiding van Employee.

Overerving (inheritance) Het voordeel is dat we de code van Employee niet nog eens hoeven over te nemen. Dit is vooral belangrijk bij onderhoud van software. Bij overname van code zouden er bij wijzigingen in Employee op twee plaatsen aanpassingen moeten plaatsvinden. Nu hoeft dat maar op één plaats. Terminologie Manager is een subklasse van Employee Employee is een superklasse van Manager Manager heet ook wel een subtype van Employee Anders gezegd: iedere Manager is een Employee, maar omgekeerd niet. Voor overerving geldt, net zoals voor klassen en objecten, dat dit begrip overeenkomt met onze intuitie. In het dagelijks leven brengen we vergelijkbare hierarchieën aan: dieren
View more...

Comments

Copyright � 2017 NANOPDF Inc.
SUPPORT NANOPDF