Visual Basic 使用对象编程:使用类(一)—— 什么是类?
2008-07-23 10:56
274 查看
一.类的定义<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
对于我们初学者来说,编程就是把控件从工具箱拖动到窗体上,然而要想提高编程技能,现在开始必须引入面向对象编程的概念,让我们首先从掌握类开始。简单的说,“类”就是对象的表示形式,一个类可以用于创建对象的多个副本。
尽管我们没有在代码中编写过类,但实际上我们已经在使用类了。例如,当我们将一个 TextBox 控件拖动到窗体上时,实际上就是在创建 TextBox 类的一个新“实例”。由于每个对象都是类的一个单独的“实例”,所以创建类的操作就称为“实例化”。我们可以从“工具箱”中拖动 TextBox 控件将它们添加到了窗体中,不过我们也可以通过使用 New 关键字,在代码中声明 TextBox 对象来实例化该对象,代码如下:
Dim Textbox1 As New TextBox
二.类中有什么
所有对象都具有描述其特性的属性、定义其操作的方法以及定义其响应的事件。同样,定义一个对象的类也具有它自己的属性、方法和事件(有时也称为“成员”),它们都将传递给该类的所有实例。
例如,一个表示银行帐号的类可能具有 AccountNumber(储户姓名) 或 AccountBalance(帐户余额) 属性、CalculateInterest(计算利息)方法以及BalanceChanged(余额变化) 事件。一旦将一个银行帐号对象实例化,就可以访问它的属性、方法和事件。
类中的有些成员是私有的,只有该类中的代码可以访问它们。例如,一个银行帐号类可能具有一个计算余额的方法。您可能允许某一程序读取余额,但是却不希望这个程序直接更改余额。可以通过将类中的成员声明为 Private 将其隐藏,或者通过将其声明为 Public 公开它们。还可以通过将它声明为 ReadOnly,以允许程序访问某一属性,但防止程序更改其值。下面的代码显示了 BankAccount 类可能是什么样子。
Class BankAccount
Private AccountNumber As String
Private AccountBalance As Decimal
Public Sub UpdateBalance()
' add code to recalculate balance.
End Sub
ReadOnly Property Balance() As Decimal
Get
Return AccountBalance
End Get
End Property
End Class
对于我们初学者来说,编程就是把控件从工具箱拖动到窗体上,然而要想提高编程技能,现在开始必须引入面向对象编程的概念,让我们首先从掌握类开始。简单的说,“类”就是对象的表示形式,一个类可以用于创建对象的多个副本。
尽管我们没有在代码中编写过类,但实际上我们已经在使用类了。例如,当我们将一个 TextBox 控件拖动到窗体上时,实际上就是在创建 TextBox 类的一个新“实例”。由于每个对象都是类的一个单独的“实例”,所以创建类的操作就称为“实例化”。我们可以从“工具箱”中拖动 TextBox 控件将它们添加到了窗体中,不过我们也可以通过使用 New 关键字,在代码中声明 TextBox 对象来实例化该对象,代码如下:
Dim Textbox1 As New TextBox
二.类中有什么
所有对象都具有描述其特性的属性、定义其操作的方法以及定义其响应的事件。同样,定义一个对象的类也具有它自己的属性、方法和事件(有时也称为“成员”),它们都将传递给该类的所有实例。
例如,一个表示银行帐号的类可能具有 AccountNumber(储户姓名) 或 AccountBalance(帐户余额) 属性、CalculateInterest(计算利息)方法以及BalanceChanged(余额变化) 事件。一旦将一个银行帐号对象实例化,就可以访问它的属性、方法和事件。
类中的有些成员是私有的,只有该类中的代码可以访问它们。例如,一个银行帐号类可能具有一个计算余额的方法。您可能允许某一程序读取余额,但是却不希望这个程序直接更改余额。可以通过将类中的成员声明为 Private 将其隐藏,或者通过将其声明为 Public 公开它们。还可以通过将它声明为 ReadOnly,以允许程序访问某一属性,但防止程序更改其值。下面的代码显示了 BankAccount 类可能是什么样子。
Class BankAccount
Private AccountNumber As String
Private AccountBalance As Decimal
Public Sub UpdateBalance()
' add code to recalculate balance.
End Sub
ReadOnly Property Balance() As Decimal
Get
Return AccountBalance
End Get
End Property
End Class
相关文章推荐
- Visual Basic 使用对象编程:使用类(三)—— 向类中添加属性
- 第2章 Java编程基础——FAQ2.22 创建String对象时, 使用String s=new String (“abc”)和String s=“abc”语句有什么区别?
- Visual Basic 使用对象编程:使用类(四)—— 向类添加方法
- vba编程不知道该使用什么对象属性方法实现操作的时候用宏录制来查阅代码
- JavaScript编程中布尔对象的基本使用
- 对于String对象,可以使用"="赋值,也可以使用"new"关键字赋值,两种方式有什么区别?
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--类设计1[使用IE浏览本页]
- 面向对象高级编程(2)-使用@property
- 异步编程模型--使用 IAsyncResult 对象
- 使用WinInet方式访问网页与使用WinHttp对象方式访问有什么不同
- Go语言的素数对象编程实现及其使用
- 【PHP面向对象(OOP)编程入门教程】如何去使用对象中的成员
- 【Python】[面向对象高级编程] 使用__slots__,使用@property
- 根据页面结构使用描述性编程读取页面中经常变动的内容 ---- 无需依赖对象-1
- COM编程入门:第一部分 什么是COM,如何使用COM
- Solaris2.4 多线程编程指南3--使用同步对象编程
- 001_你使用过Objective-C的运行时编程(Runtime Programming)么?如果使用过,你用它做了什么?你还能记得你所使用的相关的头文件或者某些方法的名称吗?
- 对象是什么?使用Martin Fowler来观察对象
- java基础复习之对于String对象,能够使用“=”赋值,也能够使用newkeyword赋值,两种方式有什么差别?