充分掌握VB.NET變量應用技巧
作為生活在這樣一個技術更新速度非常快的時代中的開發人員來說他們是幸運的。因為各種編程語言和新技術的出現,幫助他們輕松的解決了當下的需求,大大降低了工作中的壓力。下面我們就來詳細了解一下這其中VB.NET變量的相關概念。#t#
大家可能會想:對于一個學習過任何一種編程語言的人來說,像常量,變量之類的概念應該再熟悉不過了,但真的是如此嗎?本篇文章將就變量的命名規則,作用范圍和生存期兩部分深入探討VB.NET變量的使用.
第一部分:VB.NET變量的命名規則
何為變量的命名規則?變量的命名規則就是為了讓代碼更加易于閱讀和維護管理而制定的程序編寫的命名準則,下面就以微軟建議采用的命名規則進行介紹.
一般變量應該遵循如下命名規則:
范圍+數據類型+標識名稱
其中范圍表示變量的作用范圍,如果是公有變量就用小寫的g表示(global),局部變量則直接省略不寫;
數據類型則為像Integer,string等數據類型的小寫的三碼簡寫.以下列出包含范例數據類型的三碼簡寫表,供大家參考使用.
- 數據類型 縮寫 范例
- Byte byt bytCount
- Boolean bln blnIsMale
- Integer int intAge
- Long lng lngNumber
- Single sng sngTax
- Double dbl dblIncome
- Short shr shrEnployeeNumber
- Decimal dec decIncome
- Date dat datMyBirthday
- Object obj objConn
- String str strMyName
- Stuctureudt udtMyStructure
- 注:udt就是英文user define type的簡寫
標識名稱:VB.NET變量的主體,建議使用以英文大小寫搭配,并以容易記憶,能夠代表變量用意的名稱,當然前提是標識名稱必須是合法的(關于什么才是合法的名稱請參考其他的資料),是如自己的名字MyName(按照命名規則就是strMyName).
依據變量的數據類型來為變量命名,是區分專業與業余程序設計師最簡單的判斷法則,希望大家能有意識地培養使用這些命名準則的聲明變量的習慣.
第二部分:VB.NET變量的作用范圍和生存期
VB.NET是一種基于.NET平臺面向對象的程序語言,具備面向對象技術的所有特性,在.NET平臺下,所有包括數據類型,窗體等都是以類加以實現的,要更好理解變量的作用范圍,那么就要以類的觀點來看待變量的作用范圍和生存期.
我們先來看看變量的一般聲明方式:
- [Public|Protected|Friend
|ProtectedFriend|Private|
dim|static|shared]- VariableName as VariableType
其實變量的作用范圍和生存期取決兩個因素:變量聲明使用了[]中的那個關鍵字和在何處聲明.
我先來說說我們最常用的幾個關鍵字:Public,Private,dim,static
Public關鍵字不能在函數,(事件)過程,區域內部(如:for..next等語句內)使用,一般只能在模塊內聲明為全局變量,如下的intCount;另外Public在類中聲明的是公有變量(成員),表示可以被派生類繼承的成員;
- Module module1
- Puplic intCount AS integer
- End Module
用Private,dim聲明的變量都是局部變量,它的范圍取決與變量在何處聲明.如在窗體聲明區聲明,則有效范圍為窗體內部,以此類推,在(事件)過程,模塊內聲明,相對應的只有在(事件)過程,模塊內有效.如過在類中聲明變量,則為私有變量(成員),表示部可以被派生類繼承的成員;
比較特別的是static,它聲明的變量叫靜態變量,那么什么是靜態變量呢?我的說法就是:作用范圍和生存期不一致的變量.一般的變量,其作用范圍和生存期都是一致的.static聲明的變量提供了局部的作用范圍和全局的生存期,也就是說,它的可訪問的范圍取決與它在何處聲明所對應的范圍,而無論在何處聲明,都提供整個程序的生存期(全局).需要注意的是:不能將 Static 修飾符用于結構中的局部變量
至于Protected,Friend,Protected Friend關鍵字,則通常用在類中進行變量的聲明,Protected(保護)的有效范圍介于Public和Private之間:對于類以外的代碼,它像私有成員一樣無法訪問,然而對于繼承它的派生類來說,就像公有成員一樣可以繼承為自己的成員;Friend(友好)的有效范圍則比Protected更大,只要是同個項目的文件和類.均可訪問,換一種說法,就是程序集范圍;Protected Friend則是Protected,Friend的結合:有效范圍為派生類和同個項目內的文件.
還有一個很重要的關鍵字--shared.它在類中聲明的VB.NET變量叫做共享成員,所謂的共享成員就是在類尚未產生實際的對象前,便可以訪問或調用的屬性和方法.在這里,我們就拿窗體類Form類來說明,大家在學VB.NET的時候首先要碰到的應該就是窗體了吧,但是窗體是一個類而非對象,那么要使用窗體的一些屬性的話拿就要使用它的共享成員.想必大家還知道activeform吧!在這不用我多解釋,相信聰明的你一定能夠理解吧!