Class Module VB.Net Tutorial

Imports System
Module Test
  Sub Main()
    Dim f as New Class1("Visual Basic", 1)
    Dim f2 as New Class1("Visual Basic", 1)
    Console.WriteLine(f2.Equals(f))   'True!  
    f = f2
    Console.WriteLine(f2.Equals(f))
  End Sub
End Module
Public Class Class1
  Private Name as String
  Private Value as Integer
  Public Sub New(Name as String, Value as Integer)
    Me.Name = Name
    Me.Value = Value
  End Sub
  Public Overrides Function ToString() as String
    Return(Name & " has the value " & Value)
  End Function
  Public Overrides Overloads Function Equals(Obj as Object) as Boolean
    'Value equality test
    If Not IsNothing(Obj)
      If TypeOf Obj is Class1 then
        If CType(Obj, Class1).Name = Me.Name and CType(Obj, Class1).Value = Me.Value then 
          Return True
        End If
      End If
    End If
    Return False
  End Function
End Class
True
True