Автор: StormBreaker
Това е вторият урок от поредичката за програмиране на VisualBasic.NET.
Какво са класовете?
Класовете са блокове код, които съдържат собствени променливи, функции и методи. Всеки клас се декларира само веднъж и може да се използва безброй пъти.
Клас се декларира по този начин:
Public Class ImeNaKlasa
... code ...
End Class
Вътре във всеки клас могат да се декларират променливи и функции специфични за желаните операции.
Деклариране на променливи от тип Клас
Декларирането на даден клас само показва на компилатора какво съдържа дадения клас. За да можем да го използваме трябва да декларираме променлива от тип името на класа.
Dim Promenliva As ImeNaKlasa
Има една подробност. Всяка променлива от тип някакъв клас трябва ЗАДЪЛЖИТЕЛНО да се инициализира (да и се придаде стойност). Това става по този начин след декларация:
Promenliva = New ImeNaKlasa()
или при декларирането
Dim Promenliva As New ImeNaKlasa()
Така създаваме нов клас ImeNaKlasa и го придаваме на променливата Promenliva. Сега вече могат да се използват всички методи и променливи вътре в самия клас. За да стигнете до метод или променлива в класа се използва точка
Promenliva.MetodVKlasa(...)
Какво са модулите?
Модулите са класове, които не могат да се съдържат в променливи. Те могат да имат само една инстанция (не може да има например 2 модула Modul1 които да са активни едновременно).
Деклариране:
Public Module TestModule
... code ...
End Module
Използват се без да се присвояват на променливи и без да се инициализират, директно с името на модула:
TestModule.MetodVModula(...)
Сега ще видите пример за използване на класове. Ето кода от видеото:
Module1.vb
Module Module1
Sub Main()
Dim person1 As New Person("Pen4o", 14)
Dim person2 As New Person("Pe6o", 16)
person1.ShowData()
person2.ShowData()
Console.ReadLine()
End Sub
End Module
Person.vb
Public Class Person
Public Name As String
Public Age As Integer
Public Sub New(ByVal ime As String, ByVal godini As Integer)
Name = ime
Age = godini
End Sub
Public Sub ShowData()
Console.WriteLine("Ime: " + Name + ", Godini: " + Age.ToString)
End Sub
End Class
2 Replies to “VisualBasic.NET -> Класове и модули”