可以,但是變量不能用ClassA或B來定義,可以用Object,或ClassA,ClassB的基類,,使用類的成員時(shí),再把變量類型轉(zhuǎn)換成相應(yīng)的類
創(chuàng)新互聯(lián)公司專注于義烏企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),商城網(wǎng)站開發(fā)。義烏網(wǎng)站建設(shè)公司,為義烏等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
new
就是實(shí)例化,比如實(shí)例化一個(gè)類,你才能訪問,,
好比,你是張三,把你的地址告訴了我,我在能找到你家在哪,這個(gè)過程就可以稱為實(shí)例化。
使用New關(guān)鍵字建立一個(gè)新的對(duì)象和用它屬的類來定義是一樣的。New關(guān)鍵字可以被用作來建立一個(gè)窗體、類模塊以及集合的實(shí)例。用戶在設(shè)計(jì)的時(shí)候建立的每一個(gè)窗體都是一個(gè)類。New關(guān)鍵字能夠用來建立一個(gè)類的實(shí)例。
可以通過以下步驟來建立一個(gè)類的實(shí)例:
(1)在窗體上畫一個(gè)按鈕和幾個(gè)其他的控件。
(2)按鈕的Click事件過程加入以下代碼:
Dim
x
AS
New
Form1
x.Show
(3)運(yùn)行程序,并且點(diǎn)擊幾次按鈕,把最前面的窗體移開,因?yàn)榇绑w是一個(gè)有可視界面的類,此時(shí)可以看見有很多窗體的拷貝,每一個(gè)窗體具有相同的控件,并且出現(xiàn)在一個(gè)地方。
(4)將列代碼加到按鈕的click事件過程中:
Dim
f
As
Form1
f=New
Form1
f.text="hello"
f.Show
使用New關(guān)鍵字可以從類模塊中定義的類中建立一個(gè)新的集合和對(duì)象,要知道它們?cè)鯓庸ぷ鳎梢詤⒖枷旅娴睦樱?/p>
(1)建立一個(gè)新的工程,并且在一個(gè)名為Form1的窗體上畫一個(gè)按鈕控件。
(2)在Project(項(xiàng)目)菜單下,選擇"Add
Class"給工程添加一個(gè)類
(3)把新的類命名為ShowMe.VB
(4)在該新類中加入如下代碼:
PUblic
Class
ShowMe
Sub
ShowFrm()
Dim
frmNew
As
Form1
frmNew=New
Form1
frmNew.Show()
frmNew.WindowState=1
End
Sub
End
Class
(5)在Button1_click事件的過程中加入如下代碼:Protected
Sub
Button1_Click(Byval
sender
As
System.Object,_
Byval
AS
System.EventArgs)
Dim
clsNew
As
New
ShowMe()
clsNew.ShowFrm()End
Sub
運(yùn)行程序,并且點(diǎn)擊幾次按鈕,將看見每創(chuàng)建一個(gè)ShowMe類的新的實(shí)例時(shí),在桌面上有一個(gè)最小化的窗體的圖標(biāo)。
New關(guān)鍵字只能用來建立一個(gè)類的對(duì)象,不能建立一個(gè)基于基本的數(shù)據(jù)類型的對(duì)象,例如Integer。而且,不能建立一個(gè)基于一個(gè)具體對(duì)象的對(duì)象。例如,下面的代碼根據(jù)一個(gè)名為SomeClass的類,建立了一個(gè)名為Objx的對(duì)象,面后又錯(cuò)誤地企圖根據(jù)對(duì)象Objx再建立一個(gè)其他的對(duì)象:
Dim
Objx
As
New
SomeClass()
Dim
Objx
AS
New
Objx()
以上代碼是非法的。
呵呵##~
'代碼來源:代碼街codejie點(diǎn)虐
'由于在vb點(diǎn)虐 里變量名不區(qū)分大小寫(StuName和stuname是一樣的),所以個(gè)別變量名需要修改
'在vb點(diǎn)虐 中,模塊級(jí)變量的命名原則是以m_開頭
Public Class Student
Private m_stuNo As String '學(xué)生號(hào)字段
Private m_stuName As String '學(xué)生姓名字段
Private m_stuAge As Integer '學(xué)生年齡字段
Private m_stuAddress As String '學(xué)生住址字段
'無參構(gòu)造方法
Public Sub New()
End Sub
'有參構(gòu)造方法
Public Sub New(ByVal stuNo As String, ByVal stuName As String, ByVal stuAge As Integer, ByVal stuAddress As String)
m_stuNo = stuNo
m_stuName = stuName
m_stuAge = stuAge
m_stuAddress = stuAddress
End Sub
'學(xué)生號(hào)屬性
Public Property StuNo() As String
Get
Return m_stuNo
End Get
Set(ByVal value As String)
m_stuNo = value
End Set
End Property
'學(xué)生姓名屬性
Public Property StuName() As String
Get
Return m_stuName
End Get
Set(ByVal value As String)
m_stuName = value
End Set
End Property
'學(xué)生年齡屬性
Public Property StuAge() As Integer
Get
Return m_stuAge
End Get
Set(ByVal value As Integer)
m_stuAge = value
End Set
End Property
'學(xué)生住址屬性
Public Property StuAddress() As String
Get
Return m_stuAddress
End Get
Set(ByVal value As String)
m_stuAddress = value
End Set
End Property
End Class
這屬于裝箱拆箱。我舉個(gè)例子你就明白了:
Dim x As Integer = 5
Dim o As Object = x '裝箱
Dim y As Integer = CType(o, Integer) '拆箱(在Option Strict Off的情況下,直接用o給y賦值,會(huì)發(fā)生自動(dòng)轉(zhuǎn)換,也就是說在這種情況下,你不必顯式調(diào)用CType函數(shù))
另外:VB.NET支持后期綁定,所以你也可以不進(jìn)行拆箱,直接在Object類型下就可以調(diào)用它的屬性和方法
比如,下面的語句在Option Strict Off是是合法的
Dim s As String = 886
Dim i As Integer = "53"
Dim f As Object = New Form()
f.Show() '注意,f是Object類型的
總之,VB.NET的語法要比C#靈活得多
標(biāo)題名稱:vb點(diǎn)虐
實(shí)體類的簡單介紹
路徑分享:http://muchs.cn/article4/ddehcie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、做網(wǎng)站、域名注冊(cè)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)