dim objEye as IEye = new Eye(); '用接口型引用,new 实现类的对象.
messagebox.show(objEye.IEye) '调用属性
在VB.NET的类里,实现一个接口的语句是:
implements接口名称
例如,下面定义一个车(总称)的接口,这里的车是各种车的总称:
Public Interface ICar
Property color() As String
Property speed() As Long
Sub PrintInfo()
End Interface
然后在不同类型的"车"类里实现它:
Public Class A_Car
Implements ICar
Dim m_color As String, m_speed As Long
Public Property color() As String Implements ICar.color
Get
Return m_color
End Get
Set(ByVal Value As String)
m_color = Value
End Set
End Property
Protected Overrides Sub Finalize()
MsgBox(I was deconstructed!)
End Sub
Public Sub New()
m_color = Red
MsgBox(I was constructed!)
Public Property speed() As Long Implements ICar.speed
Return m_speed
Set(ByVal Value As Long)
m_speed = speed
Public Sub PrintInfo() Implements ICar.PrintInfo
MsgBox(Color: m_color vbNewLine Speed: m_speed, MsgBoxStyle.Information)
End Class
在 Form 的 Load 事件中编写:
Dim myCar As New A_Car
myCar.PrintInfo()
运行之后就创建了一个 A_Car 类的实例 myCar,然后出现两个对话框,分别说明实例已经创建和汽车的信息.当窗体卸载时,这个类的实例 myCar 将自动销毁,这时将出现一个"I was deconstructed!"的对话框.
声明一个接口时,需要考虑以下几点:
①接口主体只限于对方法,索引器以及属性的声明;
面向对象的接口
在C◆◆中,一个类被允许继承多个类.但是在Java以后的语言不被允许.
这样,如果想继承多个类时便非常困难.所以开发方想出了新办法:接口.
一个接口内,允许包含变量、常量等一个类所包含的基本内容.但是,接口中的函数不允许设定代码,也就意味着不能把程序入口放到接口里.由上可以理解到,接口是专门被继承的.接口存在的意义也是被继承.和C◆◆里的抽象类里的纯虚函数是相同的.不能被实例化.
定义接口的关键字是interface,例如:
publicinterfaceMyInterface{
public void add(int x,int y);
public void volume(int x,int y,int z);
}
继承接口的关键字是implements,相当于继承类的extends.
需要注意的是,当继承一个接口时,接口里的所有函数必须全部被覆盖.例如:
class Demo implements MyInterface{
public void add(int x,int y){
System.out.println( ◆(x◆y));
public void volume(int x,int y,int z){
System.out.println( ◆(x*y*z));
public static void main(String args[]){
Demo d=new Demo();
d.volume(10,10,10);
输出结果:
①.000
当想继承多个类时,开发程序不允许,报错.这样就要用到接口.因为接口允许多重继承(,),而类不允许.所以就要用到接口.
可以的,把项目的类型设成类库,将所有的函数用Public修饰附封装在类里面,生成dll文件.这样别人就可以在别人项目属性的引用页里面添加对你的dll文件的引用,然后导入命名空间,直接使用了.
比如说,在一个项目里:
NameSpace Controller
Public Class ControlMachine
Public Sub Boot()
Public Sub Shutdown()
End NameSpace
进入另一个项目的项目属性,进入引用页,添加到那个dll文件的引用.在代码中:
Imports Controller '加在代码文档的最顶端
使用:
Dim controller As New ControlMachine
controller.Boot()
controller.Shutdown()
希望你能了解,不懂再追问
public?static?String?reverse1(String?str)
{
return?new?StringBuffer(str).reverse().toString();
{?
char[]?array?=?s.toCharArray();?
String?reverse?=?"";?//注意这是空串,不是null
for?(int?i?=?array.length?-?1;?i?=?0;?i--)?
reverse?◆=?array[i];?
return?reverse;?
}?
int?length?=?s.length();?
for?(int?i?=?0;?i?length;?i◆◆)?
reverse?=?s.charAt(i)?◆?reverse;//在字符串前面连接,?而非常见的后面
char[]?s?=?orig.toCharArray();?
int?n?=?s.length?-?1;?
for?(int?i?=?0;?i?=?halfLength;?i◆◆)?{?
char?temp?=?s[i];?
s[i]?=?s[n?-?i];?
s[n?-?i]?=?temp;?
return?new?String(s);?//知道?char数组和String相互转化
以上就是土嘎嘎小编为大家整理的接口vb.net相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!