vb.net类用法,VBNET的编程机制

vb.net 中new的具体用法?以及实例化是什么意思?.

new

目前成都创新互联公司已为成百上千家的企业提供了网站建设、域名、网站空间网站托管运营、企业网站设计、营口网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

就是实例化,比如实例化一个类,你才能访问,,

好比,你是张三,把你的地址告诉了我,我在能找到你家在哪,这个过程就可以称为实例化。

使用New关键字建立一个新的对象和用它属的类来定义是一样的。New关键字可以被用作来建立一个窗体、类模块以及集合的实例。用户在设计的时候建立的每一个窗体都是一个类。New关键字能够用来建立一个类的实例。

可以通过以下步骤来建立一个类的实例:

(1)在窗体上画一个按钮和几个其他的控件。

(2)按钮的Click事件过程加入以下代码:

Dim

x

AS

New

Form1

x.Show

(3)运行程序,并且点击几次按钮,把最前面的窗体移开,因为窗体是一个有可视界面的类,此时可以看见有很多窗体的拷贝,每一个窗体具有相同的控件,并且出现在一个地方。

(4)将列代码加到按钮的click事件过程中:

Dim

f

As

Form1

f=New

Form1

f.text="hello"

f.Show

使用New关键字可以从类模块中定义的类中建立一个新的集合和对象,要知道它们怎样工作,可以参考下面的例子:

(1)建立一个新的工程,并且在一个名为Form1的窗体上画一个按钮控件。

(2)在Project(项目)菜单下,选择"Add

Class"给工程添加一个类

(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

运行程序,并且点击几次按钮,将看见每创建一个ShowMe类的新的实例时,在桌面上有一个最小化的窗体的图标。

New关键字只能用来建立一个类的对象,不能建立一个基于基本的数据类型的对象,例如Integer。而且,不能建立一个基于一个具体对象的对象。例如,下面的代码根据一个名为SomeClass的类,建立了一个名为Objx的对象,面后又错误地企图根据对象Objx再建立一个其他的对象:

Dim

Objx

As

New

SomeClass()

Dim

Objx

AS

New

Objx()

以上代码是非法的。

呵呵##~

在vb.net中怎么调用自定义类?

代码已测试。

一、测试需要的INI文件。名称为“setinfo.ini”,存放路径为你解决方案里“Bin“文件夹的”Debug“文件夹里。

内容:

[Location]

pnlTime.Location.X=787

pnlTime.Location.Y=0

[TopMost]

Top=True

二、操作INI文件的类。新建一个类,类中内容为:

Public Class Class1

Public Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _

( _

ByVal lpApplicationName As String, _

ByVal lpKeyName As String, _

ByVal lpDefault As String, _

ByVal lpReturnedString As String, _

ByVal nSize As Int32, _

ByVal lpFileName As String _

) As Int32

End Class

三、界面代码:

Imports System.IO 'for path

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

getINI()

End Sub

Private Sub getINI()

Dim iniclass As New Class1 '

Dim myBf As String 'get set_info 开辟存储的内存

myBf = New String(CChar(""), 256)

Dim myFN As String '配置文件的文件路径

myFN = Path.Combine(My.Application.Info.DirectoryPath, "setinfo.ini")

Dim myAN As String 'Application_NAME,也是Section名称

myAN = Me.TextBox1.Text

Dim myKN As String 'KEY_NAME,关键字名称

myKN = Me.TextBox2.Text

Class1.GetPrivateProfileString(myAN, myKN, "", myBf, myBf.Length, myFN) '调用读取INI文件的操作

TextBox3.Text = Microsoft.VisualBasic.Left(myBf, InStr(myBf, Chr(0)) - 1) '截取有用部分,有必要

End Sub

End Class

四、测试截图如下

vb.net中创建类

不熟悉VB,如有不妥的地方请包涵!

Public Class Stack

Dim aryData() As Integer

Sub New(ByVal Num As Integer)

Dim aryData(Num) As Integer

End Sub

Function Pop() As Integer

If (aryData.Length = 0) Then

Return 0

Else

Dim a As Integer

a = aryData(aryData.Length)

aryData(aryData.Length) = Convert.ToInt32(DBNull.Value)

Return a

End If

End Function

Sub Push(ByVal n As Integer)

For Each i As Integer In aryData

If (aryData(i) = Convert.ToInt32(DBNull.Value)) Then

aryData(i) = n

End

Else

Continue For

End If

Next

End Sub

Sub PrintStack()

For Each i As Integer In aryData

If (aryData(i) = Convert.ToInt32(DBNull.Value)) Then

End

Else

Print(aryData(i))

End If

Next

End Sub

End Class

在VB.NET中Friend的用法

Friend是用来在声明中定义访问级别的。

Public:公用,同一项目中任意位置的代码,引用该项目的其他项目,以及由该项目生成的任何程序集。

Protected:保护,同一个类内部或从该类派生的类中访问元素。

Friend:友元,从同一程序集内部访问元素,而不能从程序集外部访问。

Protected Friend:Protected 和 Friend 的联合,派生类或同一程序集内,或两者皆可。

Private:私有,仅可以从同一模块、类或结构内访问元素。

而所谓程序集的概念,可以理解为一个项目就是一个程序集,VS支持一个解决方案有多个项目,也就是一个解决方案多个程序集,比如项目A、项目B,项目A为启动项目。A要访问B首先要引用B,假设B里有个public的类myclass,类里有一个public的方法A和一个friend的方法B,按照前面说的访问级别的设定,myclass类的方法A在项目A中是可见的,而B却是不可访问的(Friend从且仅从同一程序集内部访问)。这就是区别。

P.S MSDN给的程序集的定义繁琐而难于理解,题主可以自行查阅一下。

VB.NET中,类到底是什么意思,它存在的用途是什么

类,是面向对象思想的一个产物。它的用途,就在于把事物高度抽象。比如说游戏中的玩家,你可以定义一个玩家类,这个类,有自己的属性和方法,玩家的生命值,等级,金钱,等等等等,它可以有自己的方法,比如,可以跳跃,可以死亡。类,本身并不能存在于内存之中,这就解释了对象的问题。类,实例化以后,对象诞生,真实的存在于内存之中。你把一个玩家类实例化100次,诞生100个玩家在游戏中。这个关系,你可以简单的这么理解。

VB.NET里的“类”有何用?

模块相当于一堆公开方法的集合,类相当于你平时拖的控件,在vb6里面你想自己写个控件是很复杂的,而vb.net里只需要继承自现有控件即可。就按钮来说同样是按钮类,你可以拖若干个到界面上,也就是存在若干实例或对象,而模块,通常只有一个对吧,模块相当于c#的静态类。


当前标题:vb.net类用法,VBNET的编程机制
文章URL:http://myzitong.com/article/heojoi.html