物件导向程序设计
来源:互联网 发布:周涛 复杂网络 编辑:程序博客网 时间:2024/05/01 07:18
VB.Net视频中所讲的物件导向程序设计就是我们常说的面向对象程序设计(OOP),在这一部分的内容中,主要讲到了物件和类别的设计。简单点儿来说,物件就是对象(Object),类别就是类(Class)。类别是创建物件时要定义的类型,物件是类别的具体实体。在物件导向程序设计中,程序需要通过一个个物件来执行的。
物件:物件的生命周期分为创建、复制和销毁。
物件的创建:VB.Net和C#都需要使用物件,可两者创建物件的方式确实不一样的,比较一下两者的代码。
'------VB.Net中创建对象的语法---------' Dim student As Student '声明变量,在堆中创建空间 student = New Student() '实例化Student类,在堆中创建student实体 '------也可以写成如下形式--------------' Dim student As Student = New Student() '在VB.Net中常用的形式<span style="font-family: KaiTi_GB2312; background-color: rgb(255, 255, 255);"> </span>
//在C#中创建对象的语法 Stduent student=New Student();//直接实例化Student类,创建student实体物件的复制:.Net平台提供了IClone接口,通过实现IClone接口,就可以对物件进行复制,语法如下。
物件的销毁:在VB6.0中通过语句对象进行销毁,如Set student = Nothing。在.Net中使用资源收集器(GC)来销毁物件,GC会周期性地自动执行,并回收没有被参考的物件。当然了如果想在程序执行完毕后,立即销毁物件,VB.Net中也可以手动收回,语法和VB6.0一样。
类别:类很好的体现了面向对象的三大特性,封装、继承和多态。
封装
类是具有相同属性、方法和事件的物件的封装体。一个类的生成同时伴随着其属性、方法或事件的生成,这样定义的类才有她的价值。
Public Class Student '定义学生类 Dim _name As String '定义学生的属性,名字和学号 Dim _id As String Public Property Name() As String '定义属性所需的关键字Property Get '属性的两个函数,Get(读)和Set(写) Return _name End Get Set(value As String) _name = value End Set End Property Public Property ID() As String Get Return _id End Get Set(value As String) _id = value End Set End PropertyEnd Class类中的方法是指该类可执行的操作,类的方法可通过Sub过程和Function过程进行声明,Sub过程和Function过程都是VB.Net中一个独立的过程,可读取参数、执行一系列语句并改变其参数的值。两者的区别是Sub过程不需要返回值,Function过程需要返回值。
Public Function StuAdress() As String '返回值的类型End FunctionPublic Sub StuWork() '无需返回值End SubVB6.0和VB.Net声明类的方法是一样的,区别在于VB.Net提供了方法重载的机制。VB.Net通过对具有相同名称的方法设置不同的参数来进行方法重载的。
Public Overloads Sub StuWork(ByVal ID As String) ’方法重载需要用到关键字OverloadsEnd SubPublic Overloads Sub Stuwork(ByVal Name As String) '方法名一样,其中的传递参数不一样。End Sub事件,应用程序的执行是通过事件驱动的。例如当用户点击了窗体中的一个控件时,一个Click事件被触发了,并且可以调用一个事件处理过程。事件也可以让一些不相关的过程联系在一起。例如,有一个过程需要做很多事情,诸如一系列的操作,用户可以把一系列的事件组成一个独立的线程。如果用户决定要取消一个操作,应用程序可以发出一个cancel事件,来阻止这一系列操作的进行。
继承
在VB.Net中支持类的继承,允许用户定义一个类,作为其他类继承的依据。继承类能够继承、 扩充继承基本类的属性和方法。
Public Class StudentA '定义学生A,继承与Student类 Inherits Student '继承的关键字Inherits Dim _name As String Dim _id As String Public Property Name() As String Get Return _name End Get Set(value As String) _name = value End Set End Property End Class
多态
多态是指对同一事件作出不同的响应,继承和接口通过对类方法的重写实现多态。
Public Overridable Sub StuWork() '关键字Overridable表示该方法可以重写 End Sub Public Overrides Sub StuWork() '关键字Overrides表示对该方法进行重写 End Sub
总结
物件导向程序设计中,物件和类别是程序的主要执行者。物件是类的实体,因此类别的设计就显得尤为重要。
1 0
- 物件导向程序设计
- .NET---物件导向与类别设计
- 物件导向的核心重点: 多态
- 以物件导向方法描述网路电脑辅助教学模型
- .NET——物件导向与类别设计
- java之物件导向程式设计(一)
- Objective-C 2.0 笔记 (3) Objective-C 物件导向程式设计,类目、协定、继承及复合
- FileSystemObject 物件
- 隐藏物件
- 导向滤波
- ip 导向
- 知识导向
- (2)物件池
- 取得DOM物件
- 物件整体透明实现
- 使用Delphi 發展商業物件
- comm物件对比
- 物件碰撞(OnTrigger)
- C# 中名称空间的引用
- mysql中遇到1366错误的解决办法
- 给你自由,快速下载Android SDK的方法,超实用
- 论生活状态
- MySQL数据类型
- 物件导向程序设计
- iOS开发的一些奇巧淫技 1
- 抽象类是否可继承实体类
- 回首2014年互联网十宗“最“
- 正向代理和反向代理
- win8.1下Eclipse初配(主题、字体等)
- iOS开发的一些奇巧淫技2
- 2015软考数据库三级模式
- layoutsubviews什么时候会被调用