自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

新手必讀VB.NET動(dòng)態(tài)標(biāo)識(shí)符

開發(fā) 后端
文章主要介紹了VB.NET動(dòng)態(tài)標(biāo)識(shí)符,有了VB.NET動(dòng)態(tài)標(biāo)識(shí)符這一特性,不需要利用反射的復(fù)雜語法,就可以做很多需要反射和運(yùn)行時(shí)類型信息來做的任務(wù)。

什么詞語前加上動(dòng)態(tài)兩個(gè)字給人的感覺就是活的,而我們的開發(fā)語言也是一樣的,動(dòng)態(tài)語言給我?guī)砗莒`活的運(yùn)行行為。在.net陣營,c#一直扮演著靜態(tài)語言的角色,盡管3.0的語法改變很激進(jìn),但仍注重于編譯時(shí)的類型檢查和約束。動(dòng)態(tài)特性用的不好會(huì)產(chǎn)生更多運(yùn)行時(shí)問題,不易確保程序的可靠性,但其提高開發(fā)效率的作用是毋庸置疑的。visual Basic 9.0是Visual Studio中唯一能讓你統(tǒng)領(lǐng)動(dòng)態(tài)和靜態(tài)兩大領(lǐng)域的語言,讓你在程序中自由選擇喜歡的風(fēng)格。

visual Basic 從1.0便支持后期綁定,即按照對(duì)象的運(yùn)行時(shí)類型信息使用對(duì)象,而不是定義這個(gè)對(duì)象時(shí)的類型信息。VB.NET動(dòng)態(tài)標(biāo)識(shí)符如:

  1. Dim l As Object = New ArrayList()  
  2. l.Add(12)  
  3. l.RemoveAt(0) 

我們知道object沒有add或removeat方法,但運(yùn)行時(shí)類型arraylist具有他們,因此visual Basic允許到運(yùn)行時(shí)再檢查有無相應(yīng)的操作并支持。既然這個(gè)過程已經(jīng)是在運(yùn)行時(shí)做的了,我們就應(yīng)該允許這個(gè)后期綁定的操作本身也是在運(yùn)行時(shí)確定。這個(gè)語法增強(qiáng)叫做VB.NET動(dòng)態(tài)標(biāo)識(shí)符。比如我們可以和這樣寫:

  1. Dim l As Object = New ArrayList()  
  2. l.("Add")(12)  
  3. l.("RemoveAt")(0) 

我們看到,這個(gè)時(shí)候方法名稱add和removeat已經(jīng)是字符串了,它當(dāng)然也可以是包含字符串的變量!所以你甚至可以寫出這樣的代碼:

  1. (Console.ReadLine())(12)  
  2. ("Remove" & "At")(0) 

這樣,作為方法名稱的標(biāo)識(shí)符就可以完全在動(dòng)態(tài)期間確定了。方法名稱如此,那么類型名稱呢?理應(yīng)如此。我們可以這樣寫:

  1. Dim l As Object = New ("ArrayList")() 

這樣,你的變量l的類型將根據(jù)一個(gè)運(yùn)行時(shí)字符串的值確定。動(dòng)態(tài)標(biāo)識(shí)符還能將函數(shù)的參數(shù)也動(dòng)態(tài)化,假設(shè)有下列子程序:

  1. Sub Method1(Optional arg1 As String, Optional arg2 As String) 

運(yùn)行的時(shí)候,我們可以動(dòng)態(tài)地指定將數(shù)值賦給哪個(gè)參數(shù):

  1. If a > 0 Then argString = "arg1" Else argString = "arg2" 
  2. Method1({argString}:a.ToString()) 

注意在:=符號(hào)之前的大括號(hào),表示對(duì)參數(shù)名稱的動(dòng)態(tài)結(jié)合。有了VB.NET動(dòng)態(tài)標(biāo)識(shí)符這一特性,visual Basic 9.0將不需要利用反射的復(fù)雜語法,就可以做很多需要反射和運(yùn)行時(shí)類型信息來做的任務(wù),這使得Visual Basic成為解決你手邊小問題的最佳幫手。本期我們已經(jīng)領(lǐng)略到Visual Basic 9.0在動(dòng)態(tài)特性上的革新,下一期將介紹第二個(gè)動(dòng)態(tài)特性——?jiǎng)討B(tài)接口。

【編輯推薦】

  1. VB.NET獲取硬盤信息四大法寶
  2. 講述VB.NET調(diào)用Excel的好處
  3. 簡(jiǎn)單例子概述VB.NET新窗體
  4. 描述VB.NET工程轉(zhuǎn)換成步驟
  5. 自己動(dòng)手實(shí)現(xiàn)VB.NET控件數(shù)組
責(zé)任編輯:田樹 來源: 博客
相關(guān)推薦

2010-01-15 18:17:39

VB.NET動(dòng)態(tài)標(biāo)識(shí)

2009-10-12 15:02:51

VB.NET動(dòng)態(tài)控件

2009-11-10 11:40:33

VB.NET運(yùn)算操作

2009-10-12 15:44:26

VB.NET動(dòng)態(tài)編碼技

2009-10-28 10:09:07

VB.NET Dire

2009-10-28 13:17:34

2009-10-27 10:34:40

VB.NET操作符

2010-01-14 13:08:37

VB.NET運(yùn)算符

2010-01-14 13:35:36

VB.NET特殊操作符

2010-01-14 13:27:33

VB.NET操作符li

2010-01-07 14:52:41

VB.NET運(yùn)算符

2010-01-11 18:46:15

VB.NET修飾符

2009-09-23 10:41:10

對(duì)象標(biāo)識(shí)符Hibernate

2010-01-13 18:09:09

VB.NET動(dòng)態(tài)生成代

2009-06-12 19:12:24

動(dòng)態(tài)代碼VB.NET

2009-10-12 15:41:09

VB.NET動(dòng)態(tài)代碼

2010-01-19 15:30:44

VB.NET比較運(yùn)算符

2010-01-20 14:32:12

VB.NET轉(zhuǎn)換運(yùn)算符

2010-01-21 17:39:26

VB.NET運(yùn)算符過程

2011-06-17 11:05:22

VB.NET
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)