VB是一種面向(對象)的可視化程序設計語言,采取了(事件驅(qū)動)的編程機制。VB,即Visual Basic,是一款由微軟開發(fā)的包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動編程語言。
站在用戶的角度思考問題,與客戶深入溝通,找到鄯善網(wǎng)站設計與鄯善網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設計、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務覆蓋鄯善地區(qū)。
Visual Basic 具有“面向?qū)ο蟆碧匦?。這種“面向?qū)ο蟆钡木幊谭椒ê蛡鹘y(tǒng)的全用代碼編制程序的方法有很大區(qū)別。“面向?qū)ο蟆钡木幊谭椒ū葌鹘y(tǒng)的編程方法更為簡單方便,并且編寫出來的程序也會更加穩(wěn)定。因此,“對象”可以被看做 Visual Basic 程序設計的核心。
擴展資料:
由 Visual Basic 所派生的編程語言
1、VBA
Visual Basic for Applications(VBA):包含在微軟的應用程序中(如Microsoft Office),以及類似WordPerfect、Office這樣第三方的產(chǎn)品里面。VBA 這樣嵌入在各種應用程序中看起來有些矛盾,但是它的功能和 VB 一樣強大。
2、VBS
VBScript(VBS):是默認的ASP語言,還可以用在Windows腳本編寫和網(wǎng)頁編碼中。盡管它的語法類似于VB,但是它卻是一種完全不同的語言。VBS 不使用 VB運行庫運行,而是由Windows腳本主機解釋執(zhí)行。這兩種語言之中的不同點影響ASP網(wǎng)站的表現(xiàn)。
3、vb.net
Visual Basic .NET(vb .net):當微軟準備開發(fā)一種新的編程工具的時候,第一決定就是利用 VB 6.0 來進行舊改,或者就是重新組建工程開發(fā)新工具。微軟后來開發(fā)了 VB 的繼任者Visual Basic .NET,同時也是.NET平臺的一部分。vb .net編程語言是一種真正的面向?qū)ο缶幊陶Z言,和 VB 并不完全兼容。
參考資料:百度百科 VB
VB6.0采用可視化的編程環(huán)境,它好學易用,運行VB6.0后,會出現(xiàn)如下圖所示的窗口,呵呵,看起來蠻復雜的,好多的按鈕、菜單、小窗口,別擔心,待會兒我們會一起學習這些東東都是干什么用的。
先來解決一個小問題,怎么新建一個VB的工程呢?方法是這樣的,在程序啟動時出現(xiàn)的“新建工程”對話框中選擇“標準EXE”并點擊確定,就能直接新建一個工程,如果你跳過了這個對話框則也可從“文件”菜單中選擇“新建工程”重新調(diào)出此對話框。
下面一起來看看VB的編程環(huán)境,雖然看起來復雜,但可以把它分為幾個部分,每個部分都有自己特定的功能,這樣我們就清楚多了。其實VB這是通過這樣一個界面把相近或同類的功能組合在一起的,它使我們在設計程序時能方便的控制程序的方方面面。
JAVA:
◇ 創(chuàng)建一種面向?qū)ο蟮某绦蛟O計語言,而不是面向過程的語言;
◇ 提供一個解釋執(zhí)行的程序運行環(huán)境,是程序代碼獨立于平臺;
◇ 吸收C和C++的優(yōu)點,使程序員容易掌握;
◇ 去掉C和C++中影響程序健壯性的部分,使程序更安全,例如指針、內(nèi)存申請和釋放;
◇ 實現(xiàn)多線程,使得程序能夠同時執(zhí)行多個任務;
◇ 提供動態(tài)下載程序代碼的機制;
◇ 提供代碼校驗機制以保證安全性;
Java語言的特點(1)
1. 簡單、面向?qū)ο蠛蜑槿怂煜?/p>
java的簡單首先體現(xiàn)在精簡的系統(tǒng)上,力圖用最小的系統(tǒng)實現(xiàn)足夠多的功能;對硬件的要求不高,在小型的計算機上便可以良好的運行。和所有的新一代的程序設計語言一樣,java也采用了面向?qū)ο蠹夹g(shù)并更加徹底,所有的java程序和applet程序均是對象,封裝性實現(xiàn)了模塊化和信息隱藏,繼承性實現(xiàn)了代碼的復用,用戶可以建立自己的類庫。而且java采用的是相對簡單的面向?qū)ο蠹夹g(shù),去掉了運算符重載、多繼承的復雜概念,而采用了單一繼承、類強制轉(zhuǎn)換、多線程、引用(非指針)等方式。無用內(nèi)存自動回收機制也使得程序員不必費心管理內(nèi)存,是程序設計更加簡單,同時大大減少了出錯的可能。java語言采用了C語言中的大部分語法,熟悉C語言的程序員會發(fā)現(xiàn)Java語言在語法上與C語言極其相似。
2. 魯棒并且安全
java語言在編譯及運行程序時,都要進行嚴格的檢查。作為一種強制類型語言,java在編譯和連接時都進行大量的類型檢查,防止不匹配問題的發(fā)生。如果引用一個非法類型、或執(zhí)行一個非法類型操作,java將在解釋時指出該錯誤。在java程序中不能采用地址計算的方法通過指針訪問內(nèi)存單元,大大減少了錯誤發(fā)生的可能性;而且java的數(shù)組并非用指針實現(xiàn),這樣就可以在檢查中避免數(shù)組越界的發(fā)生。無用內(nèi)存自動回收機制也增加了Java的魯棒性。
作為網(wǎng)絡語言,java必須提供足夠的安全保障,并且要防止病毒的侵襲。java在運行應用程序時,嚴格檢查其訪問數(shù)據(jù)的權(quán)限,比如不允許網(wǎng)絡上的應用程序修改本地的數(shù)據(jù)。下載到用戶計算機中的字節(jié)代碼在其被執(zhí)行前要經(jīng)過一個核實工具,一旦字節(jié)代碼被核實,便由java解釋器來執(zhí)行,該解釋器通過阻止對內(nèi)存的直接訪問來進一步提高java的安全性。同時java極高的魯棒性也增強了Java的安全性。
3. 結(jié)構(gòu)中立并且可以移植
網(wǎng)絡上充滿了各種不同類型的機器和操作系統(tǒng),為使java程序能在網(wǎng)絡的任何地方運行,java編譯器編譯生成了與體系結(jié)構(gòu)無關的字節(jié)碼結(jié)構(gòu)文件格式。任何種類的計算機,只有在其處理器和操作系統(tǒng)上有java運行時環(huán)境,字節(jié)碼文件就可以在該計算機上運行。即使是在單一系統(tǒng)的計算機上,結(jié)構(gòu)中立也有非常大的作用。隨著處理器結(jié)構(gòu)的不斷發(fā)展變化,程序員不得不編寫各種版本的程序以在不同的處理器上運行,這使得開發(fā)出能夠在所有平臺上工作的軟件集合是不可能的。而使用Java將使同一版本的應用程序可以運行在所有的平臺上。
體系結(jié)構(gòu)的中立也使得java系統(tǒng)具有可移植性。java運行時系統(tǒng)可以移植到不同的處理器和操作系統(tǒng)上,java的編譯器是由java語言實現(xiàn)的,解釋器是由Java語言和標準C語言實現(xiàn)的,因此可以較為方便的進行移植工作。
1.2.4 Java語言的特點(2)
4. 高性能
雖然java是解釋執(zhí)行的,但它仍然具有非常高的性能,在一些特定的CPU上,java字節(jié)碼可以快速的轉(zhuǎn)換成為機器碼進行執(zhí)行。而且java字節(jié)碼格式的設計就是針對機器碼的轉(zhuǎn)換,實際轉(zhuǎn)換時相當簡便,自動的寄存器分配與編譯器對字節(jié)碼的一些優(yōu)化可使之生成高質(zhì)量的代碼。隨著java虛擬機的改進和"即時編譯"(just in time)技術(shù)的出現(xiàn)使得Java的執(zhí)行速度有了更大的提高。
5. 解釋執(zhí)行、多線程并且是動態(tài)的
如果你了解C語言和C++語言,可以參考下列Java與C/C++語言的比較,如果不了解C語言和C++語言,可以忽略本部分知識。
a. 全局變量
Java程序不能定義程序的全局變量,而類中的公共、靜態(tài)變量就相當于這個類的全局變量。這樣就使全局變量封裝在類中,保證了安全性,而在C/C++語言中,由于不加封裝的全局變量往往會由于使用不當而造成系統(tǒng)的崩潰。
b. 條件轉(zhuǎn)移指令
C/C++語言中用goto語句實現(xiàn)無條件跳轉(zhuǎn),而Java語言沒有g(shù)oto語言,通過例外處理語句try、catch、finally來取代之,提高了程序的可讀性,也增強了程序的魯棒性。
c. 指針
指針是C/C++語言中最靈活,但也是最容易出錯的數(shù)據(jù)類型。用指針進行內(nèi)存操作往往造成不可預知的錯誤,而且,通過指針對內(nèi)存地址進行顯示類型轉(zhuǎn)換后,可以類的私有成員,破壞了安全性。在java中,程序員不能進行任何指針操作,同時Java中的數(shù)組是通過類來實現(xiàn)的,很好的解決了數(shù)組越界這一C/C++語言中不做檢查的缺點。
d. 內(nèi)存管理
在C語言中,程序員使用庫函數(shù)malloc()和free()來分配和釋放內(nèi)存,C++語言中則是運算符new和delete。再次釋放已經(jīng)釋放的內(nèi)存塊或者釋放未被分配的內(nèi)存塊,會造成系統(tǒng)的崩潰,而忘記釋放不再使用的內(nèi)存塊也會逐漸耗盡系統(tǒng)資源。在Java中,所有的數(shù)據(jù)結(jié)構(gòu)都是對象,通過運算符new分配內(nèi)存并得到對象的使用權(quán)。無用內(nèi)存回收機制保證了系統(tǒng)資源的完整,避免了內(nèi)存管理不周而引起的系統(tǒng)崩潰。
e. 數(shù)據(jù)類型的一致性
在C/C++語言中,不同的平臺上,編譯器對簡單的數(shù)據(jù)類型如int、float等分別分配不同的字節(jié)數(shù)。例如:int在IBM PC上為16位,在VAX-11上就為32位,導致了代碼數(shù)據(jù)的不可移植。在java中,對數(shù)據(jù)類型的位數(shù)分配總是固定的,而不管是在任何的計算機平臺上。因此就保證了Java數(shù)據(jù)的平臺無關性和可移植性。
f. 類型轉(zhuǎn)換
在C/C++語言中,可以通過指針進行任意的類型轉(zhuǎn)換,不安全因素大大增加。而在Java語言中系統(tǒng)要對對象的處理進行嚴格的相容性檢查,防止不安全的轉(zhuǎn)換。
g. 頭文件
在C/C++語言中使用頭文件聲明類的原型和全局變量及庫函數(shù)等,在大的系統(tǒng)中,維護這些頭文件是非常困難的。java不支持頭文件,類成員的類型和訪問權(quán)限都封裝在一個類中,運行時系統(tǒng)對訪問進行控制,防止非法的訪問。同時,Java中用import語句與其它類進行通信,以便訪問其它類的對象。
h. 結(jié)構(gòu)和聯(lián)合
C/C++語言中用結(jié)構(gòu)和聯(lián)合來表示一定的數(shù)據(jù)結(jié)構(gòu),但是由于其成員均為公有的,安全性上存在問題。Java不支持結(jié)構(gòu)和聯(lián)合,通過類把數(shù)據(jù)結(jié)構(gòu)及對該數(shù)據(jù)的操作都封裝在類里面。
i. 預處理
C/C++語言中有宏定義,而用宏定義實現(xiàn)的代碼往往影響程序的可讀性,而Java不支持宏定義
vb.net是完全面向?qū)ο蟮恼Z言,支持面向?qū)ο蟮乃膫€基本屬性:抽象,繼承,多態(tài),封裝,但vb是面向過程的語言,它只支持部分面向?qū)ο蟮膬?nèi)容像多態(tài),接口等。從 VB 7.0 之后的版本俗稱 VB.NET,來源于微軟的.NET戰(zhàn)略,到現(xiàn)在為止有三個版本
VB 7.0 即VB 2002,對應.NET Framework 1.0的版本
VB 7.1 即VB 2003,對應.NET Framework 1.1的版本
VB 8.0 即VB 2005,對應.NET Framework 2.0的版本
除了語法和使用習慣的繼承,VB 6.0之前的版本和VB 7.0之后的版本完全沒有聯(lián)系,幾乎沒有相同之處,兩種不同體系的語言
1. 什么是類和對象?
答:類包含某一類對象的數(shù)據(jù)和過程。對象是類的實例。
2. 為什么采用類和對象進行程序設計?
答:以便按照對象定義類,提高程序代碼的可重用性,避免重復勞動。
3. 在同一個類中,應當包括哪些對象的屬性和方法?
答:同一類對象的數(shù)據(jù)和過程。
4. VB程序設計主要包括哪兩個方面的內(nèi)容?
答:Windows應用程序界面和代碼。
5. 什么是事件驅(qū)動?
答:根據(jù)事件轉(zhuǎn)去執(zhí)行相應的事件處理過程。
1. 控件是窗體上的 對象 。
2. Visual Basic具有 BASIC程序語言簡單易學的 優(yōu)點,新增了 可視化和面向面向?qū)ο蟪绦蛟O計的 熱點,是 Windows編程人員廣泛使用的編程 工具。
3. 對象的 屬性 是在其類中定義的數(shù)據(jù)。
4. 對象的 方法 是在其類中定義的過程。
5. 對象本身的動作或功能稱為 方法 ,外界施加于某對象的動作或操作稱為 事件 。
1.面向過程
是指從功能的角度分析問題,將待解決的問題空間分解成若干個功能模塊,每個功能模塊描述一個操作的具體過程。
2.面向過程程序設計
主要是根據(jù)事務本身的邏輯過程進行編程的一種方法。
3.面向?qū)ο蟪绦蛟O計
是一種計算機編程架構(gòu),是由單個能夠起到子程序作用的單元或?qū)ο蠼M合而成。即按照對象編寫程序。
4.事件驅(qū)動程序設計
是一種電腦程式設計模型。這種模型的程式執(zhí)行流程是由使用者的動作或者是由其他程式的訊息來決定的。
5.函數(shù)
是一種特定的運算,在程序中使用一個函數(shù)時,只要給出函數(shù)名并給出一個或多個參數(shù),就能得到它的函數(shù)值
6.過程
是程序中可以執(zhí)行的一段代碼,過程包含在一個聲明語句和一個結(jié)束語句之間
7.類
是所有具有共同特征的事物的抽象,是一個抽象的概念(類是一組具有相同屬性特征的對象的抽象描述,是面向?qū)ο蟪绦蛟O計的又一個核心概念或者類是對一組對象共同具有的屬性和行為的抽象,具有封裝和隱藏性、還具有繼承性)。
8.對象
是一個屬性集合及其操作的封裝體(對象是用來描述現(xiàn)實世界中客體的部件,是面向?qū)ο筌浖到y(tǒng)在運行時刻的基本單位)。
類是對象的抽象,對象是類的實例。
9.事件
窗體或控件識別的動作
10.事件驅(qū)動
根據(jù)事件轉(zhuǎn)去執(zhí)行相應的事件處理過程。
11.屬性
是一個對象的特性,不同的對象有不同的屬性
12.算法
指解決某個問題的嚴格方法,描述有始有終的計算過程。
5.屬性窗口中屬性值被設置的方式有哪幾種?
6種:輸入 選取 瀏覽 賦值 默認 拖動
1.程序代碼是由一行一行的 語句 所組成。
3.在程序代碼中可將一個語句分成兩段的特殊符號為( _ )。
5.數(shù)值變量如果沒有設置初值,則內(nèi)定值為 0 。
7.如果有一個變量,可能會存放數(shù)值數(shù)據(jù)或字符串數(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應用程序項目文件開始運行到結(jié)束。
3.什么是靜態(tài)變量?
靜態(tài)變量是在離開程序時能夠繼續(xù)保留目前的值,待下回進入該程序時能夠繼續(xù)保留的變量值的局部變量,用Static關鍵字聲明。
(一)問答題
1.請簡單說明在程序中使用程序的好處。
(1)程序可以重復使用,以方便維護與程序調(diào)試。
(2)程序可以讓其他工程或項目使用。
(3)程序的邏輯簡單、明確,可以讓程序變得簡單且可讀性高。
(4)程序具有模塊化的功能,因此可以將一個大的應用程序分成數(shù)個小的且不同功能的程序,讓不同的程序設計師分別編寫獨立不同功能的程序,并以團隊開發(fā),加快應用程序開發(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ū)分相同名稱的程序。
VB6.0與VB.net在語法上是相似的,VB.net是微軟后續(xù)開發(fā)的編程語言,與VB6.0最大的區(qū)別是完全的面向?qū)ο?,而VB6.0是屬于面向過程的。VB6.0簡單易用,但是微軟已經(jīng)在2008年宣布不再繼續(xù)提供支持,是已經(jīng)淘汰的編程語言了,但是對于非專業(yè)的程序員,依然可以在Win7上進行程序開發(fā),我就是其中的一員。
VB是微軟早期的面向過程的編程語言,輸入pascal類型
VB.NET是運行在.NET
Framework之上的面向?qū)ο蟮恼Z言,基本遵循VB的語法
ASP是微軟早期的用于動態(tài)網(wǎng)頁開發(fā)的語言,其特點是前后臺代碼寫在同一文件中
ASP.NET是微軟用于替代ASP的動態(tài)網(wǎng)頁開發(fā)語言,特點是前后臺代碼分離
C#是微軟專為.NET平臺定制的語言,可以說是.NET平臺上的最正統(tǒng)的語言,當然VB.NET在功能上與C#是完全一致的,二者編譯后都會生成極度相似的IL(中間語言)
C#.NET沒聽說過,應該就是C#
.NET即.NET
Framework是現(xiàn)在微軟的看家平臺,所有的.NET程序都必須要在.NET
Framework上運行,你可以將其簡單地看成是一個基礎類庫。(其實該框架還會幫助你管理資源分配等等)