Copy Constructors
A copy
constructor creates a new object by copying variables from an existing object of the same type. For example, you might want to pass a Time object to a Time constructor so that the new Time object has the same values as the old one.
Visual Basic 2005 does not provide a copy constructor, so if you want one you must provide it yourself. Such a constructor copies the elements from the original object into the new one, as shown in Example 18-4.
Example 18-4. Copy constructor
Public Sub New(ByVal existingObject As Time) year = existingObject.year month = existingObject.month dayOfMonth = existingObject.dayOfMonth hour = existingObject.hour minute = existingObject.minute second = existingObject.second End Sub
A copy constructor is invoked by instantiating an object of type Time and passing it the name of the Time object to be copied:
Dim t2 As New Time(timeObject)
The Me Keyword
The keyword Me refers to the current instance of an object. The Me reference is a hidden reference to every non-Shared method of a class (Shared methods are discussed later). Each method can refer to the other methods and variables of that object by way of the Me reference.
The Me reference may be used to distinguish instance members that have the same name as parameters, as in the following:
Public Sub SomeMethod(ByVal hour As Integer) Me.hour = hour End Sub
In this example, SomeMethod takes a parameter (hour) with the same name as a member variable of the class. The Me reference is used to resolve ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access