# Klassen

Tijdens het programmeren heb je soms meerdere gegevens die eigenlijk samenhoren. bv. de gegevens van een student. Om die data te verzamelen in één variabele kunnen we een klasse aanmaken.

De definitie van een klasse gebeurt als volgt:

public class Student
{
    // gedeelte met variabelen

    // gedeelte met constructor(s)

    // gedeelte met methode(n)    
}
1
2
3
4
5
6
7
8

We kunnen in ons programma dan een variabele van het type student als volgt definiëren:

Student student = new Student();
1

# Variabelen

Uiteraard willen we data in de klasse bewaren, dus hebben we variabelen nodig. We kunnen hierbij van alle datatypes gebruik maken.

Een variabele kan ofwel public of private gedefinieerd worden. Een public variabele is ook extern beschikbaar terwijl een private enkel binnen de klasse aanspreekbaar is.

public class Student
{
    // gedeelte met variabelen
    private int studentennummer;
    public string voornaam;
    public string naam;
    public string straat;
    public int nummer;
    public int postcode;
    public string stad;
    public string email;
    public string telefoon;
    private bool actief;

    // gedeelte met constructor(s)

    // gedeelte met methode(n)    
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

De variabelen die public staan kan je in jou programma als volgt aanspreken:

Student student = new Student();
student.voornaam = "Ronny";
1
2

# Constructor

Als we een nieuwe variabele maken van het type van deze klasse, dan moet er ook een constructor aanwezig zijn om de eventuele default waarden vast te leggen.

Je kan een constructor voorzien die geen default waarde toekent:

// gedeelte met constructor(s)
public Student()
{

}
1
2
3
4
5

Je kan een constructor voorzien die dit wel doet:

// gedeelte met constructor(s)
public Student()
{
    studentennummer=0;
    voornaam=""; naam=""; 
    straat=""; nummer=0;
    postcode=0; stad="";
    email=""; telefoon="";
    actief=false;
}
1
2
3
4
5
6
7
8
9
10

Of je kan meerdere constructors voorzien waarmee de gebruiker van de klasse waarden kan meegeven aan de constructor:

// gedeelte met constructor(s)
public Student()
{
    studentennummer=0;
    voornaam=""; naam=""; 
    straat=""; nummer=0;
    postcode=0; stad="";
    email=""; telefoon="";
    actief=false;
}

public student(string _voornaam, string _naam, string _straat, int _nummer, int _postcode, string _stad, string _email, string _telefoon)
{
    studentennummer=0;
    voornaam=_voornaam; naam=_naam; 
    straat=_straat; nummer=_nummer;
    postcode=_postcode; stad=_stad;
    email=_email; telefoon=_telefoon;
    actief=false;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

In het programma kan je dan bv het volgende coderen:

Student student = new Student("Ronny", "Mees", "Doorniksesteenweg" , 145, 8500, "Kortrijk", "ronny.mees@vives.be", "0473/36.00.04");
1

# Methoden

Tot slot kan je ook methoden definiëren in een klasse. Ook die kunnen private of public zijn.

In ons voorbeeld zouden dit deze methoden kunnen zijn:

// gedeelte met methode(n) 
public void SetStudentnummer(int _nummer)
{
    studentennummer = _nummer
}

public void Ingeschreven()
{
    actief = true;
}

public void Uitgeschreven()
{
    actief = false;
}

public bool IsActief()
{
    return actief;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

In je programma kan je dan bv hetvolgende schrijven:

if(student.IsActief()){
    
}
1
2
3

Tip

Je kan ook een array van een klasse maken.

Student[] studenten = new Student[25];
1

Taak 5 - Programmeren met klassen

download