大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
是这样的,VB.NET用的是.NET FRAMEWORK的类库,所以,在实例化一个对象的时候,要用NEW,因为框架底层都是类。实例化之后,才能使用。你把一个form窗体new了,分配了空间到托管堆上,然后才能show方法把窗体展示出来 没有new的,有两种,一个是静态类,一个是元数据类型。
创新互联主要从事成都网站设计、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务阆中,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
VB.NET中的Default关键字是用来声明类的默认属性的 默认属性可以直接使用“对象名(参数)”的形式来调用 而不用写出属性名
举个例子:
'先声明1个类
Public Class myclass
Dim a1 As Integer=1
Dim a2 As Integer=2
Default Public Property geta(ByVal x As Integer) As Integer
Get
If x=1 Then Return a1 Else Return a2
Set(ByVal value As Integer)
If x=1 Then a1=value Else a2=value
End Property
End Class
'这里的geta就是默认属性,后边在主函数里调用它
Public Class test
Shared Sub Main()
Dim obj As myclass=New myclass()
Console.WriteLine("{0} {1}",obj(1),obj(2))
End Sub
End Class
最后输出结果为:1 2
也就是说可以直接使用obj(1)这样的格式 而不用使用obj.geta(1)这样的格式了
注意 默认属性必须至少带有1个参数
我们都知道,面向对象语言的三大特征是:封装、继承和多态。而重写和重载是多态的两种表现形式。多态,顾名思义,就是指多种形态。而重写和重载正好体现了这一点。现在我们以 VB.NET 语言来说明两者的区别。
重写是发生在父类与子类之间的关系。具体来讲就是子类可以重写父类的现有的方法。它要求子类的方法名称及参数必须与父类完全一致。比如吃饭,父亲可以吃两碗面,孩子同样也是吃面,却只能吃一碗。
重载则主要是发生在同一个类当中的,它通过多个名称相同的方法,但方法参数不相同,或者方法返回类型不相同来加以区别。其中,方法参数不相同包括以下几种情况:参数的个数不相同,参数的类型不相同,参数的对应位置不相同。需要说明的是,重载同样可以应用到父类与子类当中。即子类重载了父类的方法。
重写:
在 VB.NET 中,重写汲及到的关键字有:
OverRidable: 在父类中声明的可以在子类中重写的方法。
OverRides: 在子类中声明的要重写父亲中可重写的方法。
MustOverRide: 在父类中,表示这个方法必须在子类中重写。此时,该类必须声明为抽象类。
NotOverridable: 如果当前类还有子类,那么,在其子类中,该方法不允许被重写。
重载:
在 VB.NET 中,重载用到的关键是 OverLoads。
这里需要说明几点:
1. 对于在同一类当中,一组名称相同的方法或函数重载时,可以加关键字 OverLoads 或者不加。但如果其中有一个方法加上,那同组其它方法也必须加该关键字。
2. 如果该方法是重载父类中的方法。那么必须加 OverLoads 关键字。
3. 如果两个同名函数仅返回类型不相同,则它们不能重载,即必须在参数上有所不同。
是关键字。比如:SUB代表一个函数的开始,END SUB代表函数结束,函数主体语句就必须写在这两个关键字之间。CLASS类关键字,PRIVATE私有关键字,PUBLIC公用关键字,IF.....END IF是判断关键字,等等。建议找本基础书看一看。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text.IndexOf("你好") = 0 Then
TextBox1.Text = ""
End If
End Sub
窗体上添加一个文本框,一个列表框,一个按钮:
代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim MyDir As String = "C:\123"
Dim MyFilter As String = "*" TextBox1.Text "*"
ListBox1.Items.Clear()
For Each MyFile As String In System.IO.Directory.GetFiles(MyDir, MyFilter)
ListBox1.Items.Add(MyFile)
Next
End Sub