VB.Net Tutorial/Class Module/Private

Материал из VB Эксперт
Перейти к: навигация, поиск

Class with Private fields and Public method

Imports System
 Public Class Time
    " Private variables
    Private Year As Integer
    Private Month As Integer
    Private Hour As Integer
    Private Minute As Integer
    Private Second As Integer
    " Public methods
    Public Sub DisplayCurrentTime( )
       Console.WriteLine("stub for DisplayCurrentTime")
    End Sub "DisplayCurrentTime
 End Class "Time
 Module Module1
    Sub Main( )
       Dim timeObject As New Time( )
       timeObject.DisplayCurrentTime( )
    End Sub
 End Module
stub for DisplayCurrentTime

Private class fields

Module Tester
   Sub Main()
      Dim time As New CTime() " call CTime constructor
      Console.WriteLine("The initial universal times is: " & _
         time.ToUniversalString() & vbCrLf & _
         "The initial standard time is: " & _
         time.ToStandardString())
      time.SetTime(13, 27, 6) " set time with valid settings
      Console.WriteLine("Universal time after setTime is: " & _
         time.ToUniversalString() & vbCrLf & _
         "Standard time after setTime is: " & _
         time.ToStandardString())
      time.SetTime(99, 99, 99) " set time with invalid settings
      Console.WriteLine("Universal time: " & time.ToUniversalString() & _
         vbCrLf & "Standard time: " & time.ToStandardString())
   End Sub 
End Module 

Class CTime
   Inherits Object
   Private mHour As Integer " 0 - 23
   Private mMinute As Integer " 0 - 59
   Private mSecond As Integer " 0 - 59
   Public Sub New()
      SetTime(0, 0, 0)
   End Sub " New
   Public Sub SetTime(ByVal hourValue As Integer, _
      ByVal minuteValue As Integer, ByVal secondValue As Integer)
      If (hourValue >= 0 AndAlso hourValue < 24) Then
         mHour = hourValue
      Else
         mHour = 0
      End If
      If (minuteValue >= 0 AndAlso minuteValue < 60) Then
         mMinute = minuteValue
      Else
         mMinute = 0
      End If
      If (secondValue >= 0 AndAlso secondValue < 60) Then
         mSecond = secondValue
      Else
         mSecond = 0
      End If
   End Sub " SetTime
   Public Function ToUniversalString() As String
      Return String.Format("{0}:{1:D2}:{2:D2}", _
         mHour, mMinute, mSecond)
   End Function " ToUniversalString
   Public Function ToStandardString() As String
      Dim suffix As String = " PM"
      Dim format As String = "{0}:{1:D2}:{2:D2}"
      Dim standardHour As Integer
      If mHour < 12 Then
         suffix = " AM"
      End If
      If (mHour = 12 OrElse mHour = 0) Then
         standardHour = 12
      Else
         standardHour = mHour Mod 12
      End If
      Return String.Format(format, standardHour, mMinute, _
         mSecond) & suffix
   End Function 
End Class
The initial universal times is: 0:00:00
The initial standard time is: 12:00:00 AM
Universal time after setTime is: 13:27:06
Standard time after setTime is: 1:27:06 PM
Universal time: 0:00:00
Standard time: 12:00:00 AM

Private members are only available to members of this class

Public Class SomeClassInMyAssembly
    
    Private vPrivate As Integer
End Class