VBScript Tutorials - Herong's Tutorial Examples - v6.03, by Herong Yang
Object Methods - "Public" Procedures
This section provides a tutorial example on how to use 'Public Function/Sub' to define public methods. If a method is defined as the 'Default', it can be invoked by the object variable name without method name.
We have learned enough about object properties. Now we need to learn how to define object methods:
1. "Public" Qualifier - Declares procedures to be used as public methods accessible inside and outside this class. Here is the "Public" qualifier should be used:
Public Function function_name(...)
...
End Function
Public Sub subroutine_name(...)
...
End Sub
2. "Private" Qualifier - Declares procedures to be used private procedures accessible only inside this class. Here is the "Private" qualifier should be used:
Private Function function_name(...)
...
End Function
Private Sub subroutine_name(...)
...
End Sub
3. "Public Default" Qualifier - Declares a procedure to be the default public method accessible inside and outside this class. Here is the "Public Default" qualifier should be used:
Public Default Function function_name(...)
...
End Function
Public Default Sub subroutine_name(...)
...
End Sub
4. "." Dot Operator Followed by Method Names - Accesses public methods to assign new values or retrieve existing values. Here is the "." dot operator structure:
expression... object_name.function_name(...) Call object_name.subroutine_name(...)
To show you how to define public properties with property procedures, I wrote this VBScript example:
<html><body>
<!-- Class_Methods.html
- Copyright (c) 2002 HerongYang.com. All Rights Reserved.
-->
<pre><script language="vbscript">
Dim oNode
Set oNode = New Node
oNode.Email = "info@yahoo.com"
document.writeln()
document.writeln("Information of the object:")
document.writeln(" oNode.Email: " & oNode.Email)
document.writeln(" oNode.ToString(): " & oNode.ToString())
document.writeln(" oNode(): " & oNode())
document.writeln(" oNode: " & oNode)
Class Node
Private User, Domain
Public Default Function ToString()
ToString = Email()
End Function
Public Property Let Email(sEmail)
at = InStr(sEmail, "@")
If at>0 Then
User = Mid(sEmail, 1, at-1)
Domain = Mid(sEmail, at+1, Len(sEmail)-at)
End If
End Property
Public Property Get Email()
Email = User & "@" & Domain
End Property
Sub Class_Initialize()
User = "user"
Domain = "some.com"
End Sub
End Class
</script></pre>
</body></html>
When you load this VBScript example into IE, you will get this output:
Information of the object: oNode.Email: info@yahoo.com oNode.ToString(): info@yahoo.com oNode(): info@yahoo.com oNode: info@yahoo.com
Notice that how the default method can be invoked without method name, oNode() or oNode.
Table of Contents
Introduction of VBScript - Visual Basic Scripting Edition
Variant Data Type, Subtypes, and Literals
Numeric Comparison Operations and Logical Operations
String Operations - Concatenation and Comparison
Variable Declaration and Assignment Statement
Expression and Order of Operation Precedence
Statement Syntax and Statement Types
Array Data Type and Related Statements
Array References and Array Assignment Statements
Conditional Statements - "If ... Then" and "Select Case"
Loop Statements - "For", "While", and "Do"
"Function" and "Sub" Procedures
Inspecting Variables Received in Procedures
Error Handling Flag and the "Err" Object
Regular Expression Pattern Match and Replacement
scrrun.dll - Scripting Runtime DLL Library
Class, Property, Method and Related Statements
"Class" Statement - Defining Your Own Class
"New" Operator and "Nothing" Object
"Public/Private" Variables and Dot Operator
"Property Let/Set/Get" Procedures
►Object Methods - "Public" Procedures
"New", "Set", "Is", ".", "Nothing" - Object Operations
"StringBuffer" - A Class Example
IE Web Browser Supporting VBScript