vb.net对象实例化的简单介绍

vb.net实例化问题

实例化几次产生几个, 无主的对象会被cg回收(除非有特殊情况,则造成内存泄漏)

在郊区等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站建设、成都网站设计 网站设计制作按需网站策划,公司网站建设,企业网站建设,成都品牌网站建设,营销型网站,外贸营销网站建设,郊区网站建设费用合理。

最后1次的对象可通过变量进行管理,并且在生命周期内不会被回收

vb中如何实现对象实例化

普通变量赋值,使用Let关键字,通常Let需要省略。比如:

Dim i as Integer

Let i = 100

通常Let需要省略,所以上面语句会写作: i = 100

而对象变量赋值,必须显示的使用Set关键字,而且不准省略,比如:

Dim lblinf as Label '定义一个标签对象lblinf

Set lblinf = Form1.Label1 '给lblinf变量赋值为Form1窗体的Label1对象

Let lblinf.Caption = "Label1被赋值了!" 'Let通常省略

实际上Let是已经被丢弃的一个关键字,这里我给你提一下这个关键字,这样你就能很清楚的记得这两个关键字了,而在vb.Net中,连Set这个关键字也舍弃了。所有赋值语句,都直接写,左边是要赋值的变量或者对象,右边是要赋的值、表达式或者对象!

VB.net中类的实例化

1.不正确

Dim abc As myClass,定义一个可以引用myClass类型对象的变量abc。这个abc变量存在于栈上。

abc=New myClass。New myClass创建myClass实例对象,这个对象存在于托管堆上。然后(同时)让abc引用(指向)这个对象。

abc变量在栈上,而对象在托管堆上。

abc储存的是对象的地址,而不是对象本身。

看下面的代码

Dim a As myClass,b As myClass,c As myClass

a=New myClass

b=a

c=a

整个过程中只创建了一个myClass对象,位于托管堆上。

三个myClass类型的变量a、b、c位于栈上,都指向了这一个myClass对象

2.类的成员分 实例成员 和 静态成员

实例成员 必须在实例对象上调用

静态成员 可以直接调用,不需要实例对象。

vb.net为什么实例化对象要用dim

dim i as integer就像java的 int i ;就是这么定义的。至于实例化对象不一定要用DIM

比如 dim i as collection此时只是声明i的类型,没有实例化,然后再i = new collection,此时就实例化了。

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为什么实例化对象要用dim?dim不是用来定义变量的吗?

VB.NET 是万物皆对象,一个字符串是对象,一个窗体是对象,类的实例也是对象。所以不要纠结什么变量和对象。.net 里面什么都可以看成对象。 还有在一个类里定义变量,如果是用Dim定义也可以的,只是这个变量是不可见的,用Public定义就可以。比如我们最常见的Form1.Width 可以这样用,那就说明在Form类中Width 是用Public定义的。如果用Dim定义,就不能这样用了


分享标题:vb.net对象实例化的简单介绍
当前链接:http://scyanting.com/article/hisiji.html