Java
description
Transcript of Java
JAVAVAN DOMEINKLASSE TOT IMPLEMENTATIE
VOORBEELD: LESROOSTER • Analyse:
• Een lesrooster bestaat uit een aantal lessen, waarbij een les de volgende informatie bevat: de naam van het vak, de dag en het uur (1e uur, 2e uur, et cetera) waarop de les gegeven wordt en het lokaal.
• Onderstreep de zelfstandige naamwoorden en haal ze apart:
• Lesrooster, aantal, les (3x), informatie, naam, vak, dag, uur, lokaal
• Breng de relaties in kaart (modelleren):• Een lesrooster bestaat uit een aantal lessen• Bestaat uit, is onderdeel van, bevat
DIAGRAM lesrooster bestaat uit lessen:
Kl;jk;ljkl
DIAGRAM les bestaat uit vak, dag, uur, lokaal:
Kl;jk;ljkl
DIAGRAM les bestaat uit vak, dag, uur, tijdstip, lokaal:
Kl;jk;ljkl
DIAGRAMTijdstip bestaat uit:
Kl;jk;ljkl
DIAGRAM
Kl;jk;ljkl
UML DIAGRAM DOMEINKLASSEN
IMPLEMENTATIE KLASSE TIJDSTIP
// De attributenpublic class Tijdstip {
private String dag;private int uur;…}
IMPLEMENTATIE KLASSE TIJDSTIP
public class Tijdstip {private String dag;private int uur;
//constructorpublic Tijdstip( String dag, int uur ) {this.dag = dag;this.uur = uur;}…
}
IMPLEMENTATIE KLASSE TIJDSTIPpublic class Tijdstip {
private String dag;private int uur;
public Tijdstip( String dag, int uur ) {this.dag = dag;this.uur = uur;}//Getterpublic String getDag() {return dag;}….
}
IMPLEMENTATIE KLASSE LESpublic class Les {
private String vak;private Tijdstip tijdstip;private String lokaal;
//constructorpublic Tijdstip( String vak, Tijdstip tijdstip, String lokaal ) {this.vak = vak;this.tijdstip = tijdstip;this.lokaal = lokaal;}…
}
NIEUWE LES//Eerst tijdstip aanmaken:Tijdstip t = new Tijdstip( “maandag”, 3 );
// dan nieuwe les aanmaken:Les les = new Les( “Java”, t, “015”);
//Of via naamloze instantie:Les les = new Les( “Java”, Tijdstip(“maandag”, 3), “015”);
IMPLEMENTATIE LESROOSTER• Vraag: uit hoeveel lessen bestaat lesrooster? Nul? Eén?
Twee? Zestien? • We weten dat niet van te voren. • Oplossing: collecties• ArrayList is een collectie-klasse waarin je objecten kunt
plaatsenpublic class Lesrooster {
private ArrayList<Les> lijst;…
}
IMPLEMENTATIE LESROOSTER//ArrayList komt uit package java.util:import java.util.*
public class Lesrooster {private ArrayList<Les> lijst;
//constructor:public Lesrooster() {lijst = new ArrayList<Les>()}…
}
TOEVOEGEN LESSEN AAN LESROOSTER// Methode om ArrayList te vullen:public void voegtoe( Les les ) {
lijst.add( les );}
// Doorlopen ArrayList:public void print() {
for( Les x : lijst ) {System.out.println( x );}
}