VB.NET写Object Oriented编程解析

来源:岁月联盟 编辑:exp 时间:2009-10-29

VB.NET有很多值得学习的地方,这里我们主要介绍VB.NET写Object Oriented编程,包括介绍Data Member等方面。每当我们提到VB.NET写Object Oriented编程时就好自然想起Class;Class又是何物?有何用处?Class只不过是用来形容Object所包容的属性(Properties),方法(Method)和事件(Event)。除此之外,Class也描述谁能与不能执行于使用其属性,方法和事件。

假设用一辆汽车来跟Class相比。那Class就是汽车的建造蓝图;而汽车也就是用此蓝图所建造出来的实軆,也就是说Object是Class宣告和建立(instantiate)的实軆。因为汽车拥有属性(长,寛,颜色等等属性),方法(启动,停止,前往,后退等等方法)和事件(汽油将要用完,防盗系统喇叭响等等事件)。

所以在还没开始设计一个Class时,我们应花多点时间去了解相关的商业问题于需求!这样才能设计出一个完美无瑕的Class,然后应用在客户的商业解决方案。这也反映怎样达到重用同一个Class(源代码)在不同的方案了和节省应有得开发资源(员工,时间和金銭)。。。就是所有投资者和商家最感兴趣的一个项目;世界往往就是如此残酷。。。身为一个编程员。。。也只好默默的去接受!

此篇随笔的重点《VB.NET写Object Oriented编程内功心法》。何为内功心法?就是用VB.NET写Object Oriented编程的最基本的知识,包括如何用VB.NET达到Inheritance同Polymorphism之效果;有了此基本基础,以后要写一个好的Class就像如虎添翼那般容易了。

内功心法一:
首先就是要写一个最基本Class的空殻;只要紧记以下的语法就可以了,能跨出第一步。。。就有好的开始了。

  1. Public Class ClassName  
  2. '// ...  
  3. End Class 

内功心法二:
要怎样在Class里宣告Data Member;但是往往每一个Data Member都会有不同的使用范围。也就是Public,Private或Protected都有不同的意义。比如:
◆Public 代表属性,方法和事件是那里都可以使用,包括此Class的内用和外服。
◆Private 属性,方法和事件只能使用在此Class的里面。
◆Protected 属性,方法和事件只能用于Inherit的Derived Class。

  1. Public Class ClassName  
  2. [Public | Private | Protected] Variable As DataType  
  3. '// ...  
  4. End Class 

内功心法三:
加添方法进Class里面。方法(Method)可以是Sub(不回递值数)或Function(回递值数);有些更会有Arguement,有多少个Arguement(自变量串行)就要看此方法的功能而定了。所以一般方法的Prototype就大可写成:

  1. Public Class ClassName  
  2. [Public | Private | Protected] [Overloads] [Sub] MethodName 
    (Byval Arguement As DataType, ...)  
  3. '// ...  
  4. End Sub  
  5. End Class  
  6.  
  7. Public Class ClassName  
  8. [Public | Private | Protected] [Overloads] [Function] MethodName 
    (Byval Arguement As DataType, ...) As DataType  
  9. '// ...  
  10. Return Value  
  11. End Function  
  12. End Class 

而Overloads关键字就是用来建立多个同名称但自变量不同的函式,一般是用来减少函式命名的困忧!