扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
实例化一个对象使用New,实例化就是调用一次构造函数 比如:
创新互联建站成都网站建设按需网站策划,是成都网站设计公司,为资质代办提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站改版热线:18982081108
Dim A As New TR(“dsdsd”) ‘若该TR对象的构造函数有参数ByVal s As String
A.fun() '使用一些公开方法,属性
如果仅仅是这样:
Dim A As TR
将不会执行构造函数,你将不能使用一些公开方法,属性
A.fun() ’错误
'--------------------
百度VB2010(VB.NET)吧建设发展中,需要你的支持和帮助!!!
快加入我们吧!发表你的疑问,经验,程序,分享..
让我们共同进步!
是这样的,VB.NET用的是.NET FRAMEWORK的类库,所以,在实例化一个对象的时候,要用NEW,因为框架底层都是类。实例化之后,才能使用。你把一个form窗体new了,分配了空间到托管堆上,然后才能show方法把窗体展示出来 没有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()
以上代码是非法的。
呵呵##~
内存不会增加,是自动释放,重新定义New ArrayList后集合aa原值所占空间自动释放
实际上 Dim aa as ArrayList : aa = New ArrayList可以合并放在循环体内如
Do While .....
Dim aa As New ArrayList
........
........
Loop
顾名思义,new就是给变量赋值一个新的对象
dim不加new就是说变量是XX类型的,但它不是一个真正的XX对象。如果给这个变量赋值的话,实际上就是把某一对象的指针存到变量里,它依旧不是一个对象
一个普通的类,里面有一些数据,你要弄一个对象的话,需要初始化所有类中的数据并调用构造函数。这时候我们就用new了。如果你不用new,然后直接使用的话,会引发null异常
当然上面的讨论不包括Integer、String、Long这样的数值类型,这些不能用new
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流