Janssens
M
30
True

Bah, ik haat Wortel! :(
Bah, ik haat Watermeloen! :(
Bah, ik haat Spinazie! :(
Mmmmm, een lekker hamburger :)

False

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>ASP: werken met classes in VBScript - persoon</title>
	<link href="../stijl.css" rel="stylesheet">
	<META name="description" content="ASP : werken met klassen (classes) - persoonklasse">
<!-- #INCLUDE FILE="persoon.inc" -->
</head>

<body>
<%
Dim arrVoedsel
Dim objPersoon
Dim i

arrVoedsel = Array("Wortel", "Watermeloen", "Spinazie", "Hamburger")
Set objPersoon = New Persoon
objPersoon.Naam = "Janssens"
Response.Write objPersoon.Naam & "<BR>"
Response.Write objPersoon.Geslacht & "<BR>"
Response.Write objPersoon.Leeftijd & "<BR>"
Response.Write objPersoon.Hongerig & "<P>"

i = 0

While objPersoon.Hongerig

    Response.Write objPersoon.Voeden (arrVoedsel(i)) & "<BR>"
    i = i + 1

Wend

Response.Write "<P>" & objPersoon.Hongerig
%>
</body>
</html>

De klasse persoon werd geplaatst in het bestand persoon.inc

<%
Class Persoon

'********************* Private Variabelen **********
'Private : alleen te manipuleren van binnen de klasse
Private p_strNaam
Private p_strGeslacht
Private p_intLeeftijd
Private p_blnHongerig
'*****************************************************

'************************** Event Handlers ***************
Private Sub Class_Initialize()
    p_strNaam = "Schokkele"
    p_strGeslacht = "M"
    p_intLeeftijd = 30
    p_blnHongerig = True
End Sub

private sub Class_Terminate() 
end sub  

'*****************************************************

'************************** Property Lets ****************
'Staat toe waarden aan eigenschappen toe te kennen

Public Property Let Naam (strNaam) 
    p_strNaam = strNaam
End Property 
 
Public Property Let Sex ( strGeslacht ) 
    p_strGeslacht = strGeslacht
End Property 
 
Public Property Let Age ( strLeeftijd ) 
    p_intLeeftijd = strLeeftijd
End Property 

'*****************************************************

'************************** Property Gets ****************
'Staan toe de eigenschappen op te vragen

Public Property Get Naam (  )
    Naam = p_strNaam
End Property

Public Property Get Geslacht (  )
    Geslacht = p_strGeslacht
End Property

Public Property Get Leeftijd (  )
    Leeftijd = p_intLeeftijd
End Property

Public Property Get Hongerig (  )
    Hongerig = p_blnHongerig
End Property

'*****************************************************

'**************************** Methoden ********************
Public Function Voeden ( strVoedsel )
    Select Case strVoedsel
    Case "Hamburger"    
        p_blnHongerig = False
        Voeden = "Mmmmm, een lekker hamburger :)"
    Case Else
        p_blnHongerig = True
        Voeden = "Bah, ik haat " & strVoedsel & "! :("
    End Select
 End Function
'*****************************************************
End Class
%>