Shared variable and Shared Property : Property « Class Module « VB.Net Tutorial

Home
VB.Net Tutorial
1.Language Basics
2.Data Type
3.Operator
4.Statements
5.Date Time
6.Class Module
7.Development
8.Collections
9.Generics
10.Attributes
11.Event
12.LINQ
13.Stream File
14.GUI
15.GUI Applications
16.Windows Presentation Foundation
17.2D Graphics
18.I18N Internationlization
19.Reflection
20.Regular Expressions
21.Security
22.Socket Network
23.Thread
24.Windows
25.XML
26.Database ADO.net
27.Design Patterns
VB.Net
VB.Net by API
VB.Net Tutorial » Class Module » Property 
6.38.6.Shared variable and Shared Property
Module Tester

   Sub Main()
      Console.WriteLine("Employees before instantiation: " & _
         Employee.Count)

      Dim employee1 As Employee = New Employee("S""B")

      Dim employee2 As Employee = New Employee("B""J")

      Console.WriteLine("Employee.Count: " & Employee.Count)

      employee1 = Nothing
      employee2 = Nothing

      System.GC.Collect() ' request garbage collection
      
      Console.WriteLine("Employee.Count: " & Employee.Count)
      
   End Sub ' Main

End Module

Class Employee
   Inherits Object

   Private mFirstName As String
   Private mLastName As String

   Private Shared mCount As Integer

   Public Sub New(ByVal firstNameValue As String, _
      ByVal lastNameValue As String)

      mFirstName = firstNameValue
      mLastName = lastNameValue

      mCount += 
      Console.WriteLine _
         ("Employee object constructor: " & mFirstName & _
         " " & mLastName)
   End Sub ' New

   Protected Overrides Sub Finalize()
      mCount -= ' decrement mCount, resulting in one fewer object
      Console.WriteLine _
         ("Employee object finalizer: " & mFirstName & _
         " " & mLastName & "; count = " & mCount)
   End Sub ' Finalize

   Public ReadOnly Property FirstName() As String

      Get
         Return mFirstName
      End Get

   End Property ' FirstName

   ' return last name
   Public ReadOnly Property LastName() As String

      Get
         Return mLastName
      End Get

   End Property ' LastName

   ' property Count
   Public Shared ReadOnly Property Count() As Integer

      Get
         Return mCount
      End Get

   End Property ' Count

End Class
Employees before instantiation: 0
Employee object constructor: S B
Employee object constructor: B J
Employee.Count: 2
Employee object finalizer: B J; count = 1
Employee object finalizer: S B; count = 0
Employee.Count: 0
6.38.Property
6.38.1.Define and use a Property
6.38.2.Default Property
6.38.3.Two properties
6.38.4.Do calculation in Property getter
6.38.5.Properties with Getter and Setter
6.38.6.Shared variable and Shared Property
6.38.7.Class with a property that performs validation
6.38.8.ReadOnly property
6.38.9.MultiKey Properties
6.38.10.Overloaded Properties
6.38.11.Shared Properties
6.38.12.Single Indexed Property
6.38.13.Loop through two dimensional array with GetUpperBound and GetLowerBound
6.38.14.Use Property to set private data
6.38.15.Do data check in property set
6.38.16.Convert data type in property set
6.38.17.Throw Exception in Property setting
6.38.18.Change value in Property getter
6.38.19.Friend Property
6.38.20.Readable and Writable
6.38.21.Person with FirstName and LastName Property
6.38.22.Define a class with one property and retrieves the name and type of the property
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.