new
創(chuàng)新互聯(lián)公司一直通過網(wǎng)站建設(shè)和網(wǎng)站營銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實效"的一站式服務(wù),以成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、移動互聯(lián)產(chǎn)品、全網(wǎng)整合營銷推廣服務(wù)為核心業(yè)務(wù)。十多年網(wǎng)站制作的經(jīng)驗,使用新網(wǎng)站建設(shè)技術(shù),全新開發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價格便宜而且實用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡單易用,維護方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。
就是實例化,比如實例化一個類,你才能訪問,,
好比,你是張三,把你的地址告訴了我,我在能找到你家在哪,這個過程就可以稱為實例化。
使用New關(guān)鍵字建立一個新的對象和用它屬的類來定義是一樣的。New關(guān)鍵字可以被用作來建立一個窗體、類模塊以及集合的實例。用戶在設(shè)計的時候建立的每一個窗體都是一個類。New關(guān)鍵字能夠用來建立一個類的實例。
可以通過以下步驟來建立一個類的實例:
(1)在窗體上畫一個按鈕和幾個其他的控件。
(2)按鈕的Click事件過程加入以下代碼:
Dim
x
AS
New
Form1
x.Show
(3)運行程序,并且點擊幾次按鈕,把最前面的窗體移開,因為窗體是一個有可視界面的類,此時可以看見有很多窗體的拷貝,每一個窗體具有相同的控件,并且出現(xiàn)在一個地方。
(4)將列代碼加到按鈕的click事件過程中:
Dim
f
As
Form1
f=New
Form1
f.text="hello"
f.Show
使用New關(guān)鍵字可以從類模塊中定義的類中建立一個新的集合和對象,要知道它們怎樣工作,可以參考下面的例子:
(1)建立一個新的工程,并且在一個名為Form1的窗體上畫一個按鈕控件。
(2)在Project(項目)菜單下,選擇"Add
Class"給工程添加一個類
(3)把新的類命名為ShowMe.VB
(4)在該新類中加入如下代碼:
PUblic
Class
ShowMe
Sub
ShowFrm()
Dim
frmNew
As
Form1
frmNew=New
Form1
frmNew.Show()
frmNew.WindowState=1
End
Sub
End
Class
(5)在Button1_click事件的過程中加入如下代碼:Protected
Sub
Button1_Click(Byval
sender
As
System.Object,_
Byval
AS
System.EventArgs)
Dim
clsNew
As
New
ShowMe()
clsNew.ShowFrm()End
Sub
運行程序,并且點擊幾次按鈕,將看見每創(chuàng)建一個ShowMe類的新的實例時,在桌面上有一個最小化的窗體的圖標(biāo)。
New關(guān)鍵字只能用來建立一個類的對象,不能建立一個基于基本的數(shù)據(jù)類型的對象,例如Integer。而且,不能建立一個基于一個具體對象的對象。例如,下面的代碼根據(jù)一個名為SomeClass的類,建立了一個名為Objx的對象,面后又錯誤地企圖根據(jù)對象Objx再建立一個其他的對象:
Dim
Objx
As
New
SomeClass()
Dim
Objx
AS
New
Objx()
以上代碼是非法的。
呵呵##~
VB.NET可選參數(shù)的默認(rèn)值必須是一個常數(shù)表達式。
過程定義中跟在可選參數(shù)后的每個參數(shù)也都必須是可選的。
下面的語法顯示帶VB.NET可選參數(shù)的過程聲明:
Sub sub name(ByVal parameter 1 As data type 1,
Optional ByVal parameter 2 As data type 2 = default value)
調(diào)用帶VB.NET可選參數(shù)的過程
過程在運行時無法檢測到給定的參數(shù)是否已被省略,或者調(diào)用代碼是否已顯式提供默認(rèn)值。如果需要弄清楚這一點,可以設(shè)置一個不可能的值作為默認(rèn)值。下面的過程定義了可選參數(shù) office,并測試其默認(rèn)值 QJZ 以查看它在調(diào)用中是否已被省略:
Visual Basic
Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")
If office = "QJZ" Then
Debug.WriteLine("office not supplied -- using Headquarters")
office = "Headquarters" End If
' Insert code to notify headquarters or specified office.
End Sub
如果可選參數(shù)是像 String 這樣的引用類型,只要它不是該變量所預(yù)期的值,就可以使用 Nothing 作為默認(rèn)值。
VB.NET可選參數(shù)和重載
定義帶可選參數(shù)的過程的另一種方法是使用重載。如果有一個可選參數(shù),可以定義過程的兩個重載版本,一個接受此參數(shù),另一個則不帶參數(shù)。此方法隨可選參數(shù)數(shù)目的增加而變得更復(fù)雜。然而,這樣做的優(yōu)點是可以完全確定調(diào)用程序是否提供了每個VB.NET可選參數(shù)。
兩個方法
1.
要接收的窗口先使用FindWindow這個api獲得句柄
調(diào)用SetForegroundWindow使其獲得焦點并選中
調(diào)用.net方法:SendKeys.Send方法發(fā)送
2.使用API的SendInput
1. 什么是類和對象?
答:類包含某一類對象的數(shù)據(jù)和過程。對象是類的實例。
2. 為什么采用類和對象進行程序設(shè)計?
答:以便按照對象定義類,提高程序代碼的可重用性,避免重復(fù)勞動。
3. 在同一個類中,應(yīng)當(dāng)包括哪些對象的屬性和方法?
答:同一類對象的數(shù)據(jù)和過程。
4. VB程序設(shè)計主要包括哪兩個方面的內(nèi)容?
答:Windows應(yīng)用程序界面和代碼。
5. 什么是事件驅(qū)動?
答:根據(jù)事件轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理過程。
1. 控件是窗體上的 對象 。
2. Visual Basic具有 BASIC程序語言簡單易學(xué)的 優(yōu)點,新增了 可視化和面向面向?qū)ο蟪绦蛟O(shè)計的 熱點,是 Windows編程人員廣泛使用的編程 工具。
3. 對象的 屬性 是在其類中定義的數(shù)據(jù)。
4. 對象的 方法 是在其類中定義的過程。
5. 對象本身的動作或功能稱為 方法 ,外界施加于某對象的動作或操作稱為 事件 。
1.面向過程
是指從功能的角度分析問題,將待解決的問題空間分解成若干個功能模塊,每個功能模塊描述一個操作的具體過程。
2.面向過程程序設(shè)計
主要是根據(jù)事務(wù)本身的邏輯過程進行編程的一種方法。
3.面向?qū)ο蟪绦蛟O(shè)計
是一種計算機編程架構(gòu),是由單個能夠起到子程序作用的單元或?qū)ο蠼M合而成。即按照對象編寫程序。
4.事件驅(qū)動程序設(shè)計
是一種電腦程式設(shè)計模型。這種模型的程式執(zhí)行流程是由使用者的動作或者是由其他程式的訊息來決定的。
5.函數(shù)
是一種特定的運算,在程序中使用一個函數(shù)時,只要給出函數(shù)名并給出一個或多個參數(shù),就能得到它的函數(shù)值
6.過程
是程序中可以執(zhí)行的一段代碼,過程包含在一個聲明語句和一個結(jié)束語句之間
7.類
是所有具有共同特征的事物的抽象,是一個抽象的概念(類是一組具有相同屬性特征的對象的抽象描述,是面向?qū)ο蟪绦蛟O(shè)計的又一個核心概念或者類是對一組對象共同具有的屬性和行為的抽象,具有封裝和隱藏性、還具有繼承性)。
8.對象
是一個屬性集合及其操作的封裝體(對象是用來描述現(xiàn)實世界中客體的部件,是面向?qū)ο筌浖到y(tǒng)在運行時刻的基本單位)。
類是對象的抽象,對象是類的實例。
9.事件
窗體或控件識別的動作
10.事件驅(qū)動
根據(jù)事件轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理過程。
11.屬性
是一個對象的特性,不同的對象有不同的屬性
12.算法
指解決某個問題的嚴(yán)格方法,描述有始有終的計算過程。
5.屬性窗口中屬性值被設(shè)置的方式有哪幾種?
6種:輸入 選取 瀏覽 賦值 默認(rèn) 拖動
1.程序代碼是由一行一行的 語句 所組成。
3.在程序代碼中可將一個語句分成兩段的特殊符號為( _ )。
5.數(shù)值變量如果沒有設(shè)置初值,則內(nèi)定值為 0 。
7.如果有一個變量,可能會存放數(shù)值數(shù)據(jù)或字符串?dāng)?shù)據(jù),此時可以聲明該變量為 對象變量。
9. Integer數(shù)據(jù)類型占 4 bytes的內(nèi)存空間,可以表示的數(shù)值范圍為 -2,147,483,648~2,147,483,647 的整數(shù)
3.VB.NET程序語言數(shù)據(jù)類型的種類有哪些?
(1)數(shù)值型
①整形數(shù):短整形(Short)、整形(Integer)、長整型(Long)
②字節(jié)型(Byte)
③實型數(shù):單精度型(Single)、雙精度型(Double)
④貨幣型(Decimal)
(2)字符型(Char)和字符串型(String)
(3)邏輯型/布爾型(Boolean)
(4)日期型(Date)
(5)對象型(Object)[即可變型(Variant)]
1.局部變量、全局變量、跨模塊變量分別在何處聲明?其生存期分別是多少?
局部變量在程序內(nèi)聲明。生存期為從所在的程序運行開始到程序結(jié)束。
全局變量在窗體內(nèi)所有程序的外邊聲明。生存期為由該變量聲明開始,一直到程序退出運行為止。
跨模塊變量在一般模塊的聲明區(qū)用Public來聲明。生存期為從一個Windows應(yīng)用程序項目文件開始運行到結(jié)束。
3.什么是靜態(tài)變量?
靜態(tài)變量是在離開程序時能夠繼續(xù)保留目前的值,待下回進入該程序時能夠繼續(xù)保留的變量值的局部變量,用Static關(guān)鍵字聲明。
(一)問答題
1.請簡單說明在程序中使用程序的好處。
(1)程序可以重復(fù)使用,以方便維護與程序調(diào)試。
(2)程序可以讓其他工程或項目使用。
(3)程序的邏輯簡單、明確,可以讓程序變得簡單且可讀性高。
(4)程序具有模塊化的功能,因此可以將一個大的應(yīng)用程序分成數(shù)個小的且不同功能的程序,讓不同的程序設(shè)計師分別編寫?yīng)毩⒉煌δ艿某绦颍⒁詧F隊開發(fā),加快應(yīng)用程序開發(fā)的時間。
3.試比較傳值調(diào)用與傳址調(diào)用的差異。
(1)聲明方式不同:
傳值——在程序中的虛自變量之前加上ByVal
傳址——在程序中的虛自變量之前加上ByRef
(2)占用內(nèi)存不同
傳值——調(diào)用程序的實自變量與被調(diào)用程序的虛自變量占用不同內(nèi)存
傳址——調(diào)用程序的實自變量與被調(diào)用程序的虛自變量占用同一地址的內(nèi)存,也就是說,在做參數(shù)傳遞時,調(diào)用程序中的實自變量是將自己本身的內(nèi)存地址傳給被調(diào)用程序的虛自變量
(3)虛自變量更改結(jié)果不同
傳值——使用傳值調(diào)用可以防止變量被程序修改
傳址——被調(diào)用程序可以通過虛自變量將值傳回給調(diào)用程序
5.什么是程序多載?
程序多載是使用不同的自變量串行或數(shù)據(jù)類型來加以區(qū)分相同名稱的程序。
初始化一個ArrayList對象,調(diào)用它的方法和屬性,以及增加等操作。
Dim?myAL?As?New?ArrayList()
'Add方法用來增加元素。?
myAL.Add("Hello")
myAL.Add("World")?
myAL.Add("!")
'Count屬性表示元素個數(shù)。
Console.WriteLine(myAL.Count.ToString())
建議你用下面兩個泛型集合類替代ArrayList:
System.Collections.Generic.List
System.Collections.ObjectModel.Collection