vb.net是vb的升級。
創(chuàng)新互聯(lián)建站專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、建德網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5網(wǎng)站設計、商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、外貿(mào)營銷網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為建德等各大城市提供網(wǎng)站開發(fā)制作服務。
vb.net基于.net框架,是vb發(fā)展的必然趨勢。
vb功能非常強大,但是也存在眾多的缺點,所以微軟才會開發(fā)vb.net。
隨著時間的發(fā)展,vb.net完全取代vb是必然的
VB術(shù)語簡介
說明下面的代碼舉例說明了用 Drive 對象來訪問驅(qū)動器屬性:Sub ShowFreeSpace(drvPath) Dim fs, d, s Set fs = CreateObject("Scripting.FileSystemObject") Set d = fs.GetDrive(fs.GetDriveName(drvPath)) s = "Drive " UCase(drvPath) " - " s = s d.VolumeName vbCrLf s = s "Free Space: " FormatNumber(d.FreeSpace/1024, 0) s = s " Kbytes" MsgBox sEnd Sub.
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、vb.net ?完全符合面向?qū)ο蟮木幊陶Z言抽象、封裝、繼承的四大特性,而vb不支持繼承。
2、錯誤處理不同。
vb中只是On Error.....goto和On Errer Resume Next ,這些錯誤稱為非結(jié)構(gòu)化異常處理。而在vb.net中采用的結(jié)構(gòu)化異常處理機制,try...catch....finally控制。
3、兩者產(chǎn)生的窗體不同。
vb.net 允許創(chuàng)建不同類型的應用程序,例如,創(chuàng)建ASP.NET和ASP.NET Web 服務應用程序,還允許創(chuàng)建控制臺應用程序和作為桌面服務運行的應用程序。但是vb 只能創(chuàng)建Windows窗體。
4、數(shù)據(jù)庫訪問的差別。
vb6.0是通過ADO(Active X Data Objext)來實現(xiàn)對數(shù)據(jù)庫訪問。而vb.net 是通過ADO.NET來訪問數(shù)據(jù)庫。
擴展資料
Visual Basic(簡稱VB)是Microsoft公司開發(fā)的一種通用的基于對象的程序設計語言,為結(jié)構(gòu)化的、模塊化的、面向?qū)ο蟮?、包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動為機制的可視化程序設計語言。是一種可用于微軟自家產(chǎn)品開發(fā)的語言。
“Visual” 指的是開發(fā)圖形用戶界面 (GUI) 的方法——不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預先建立的對象add到屏幕上的一點即可。
“Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 語言,是一種在計算技術(shù)發(fā)展歷史上應用得最為廣泛的語言。
Visual Basic源自于BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應用程序開發(fā)(RAD)系統(tǒng),可以輕易的使用DAO、RDO、ADO連接數(shù)據(jù)庫,或者輕松的創(chuàng)建Active?X控件,用于高效生成類型安全和面向?qū)ο蟮膽贸绦?。
參考資料:百度百科-Visual Basic
在.NET構(gòu)架下,VB和C#,和JSP的區(qū)別不大,都能完成相應的功能。如果是做Web開發(fā),那就更沒問題了。
以前的VB確實不行,有點玩具的感覺,但是畢竟有入手快的優(yōu)點。所以現(xiàn)在.NET里才保留了對VB語言的支持。在.NET里語言雖然不一樣但是編譯后的底層都一樣,就好像一個系統(tǒng)有多個界面一樣。
別總是聽別人說如何如何,我就用的VB語言在做.NET的Web開發(fā),也很好啊,至少99%以上的開發(fā)都沒有問題。
' 關(guān)于VB.net { Visual Basic.NET是基于微軟.NET Framework之上的面向?qū)ο蟮闹虚g解釋性語言,可以看作是Visual Basic在.Net Framework平臺上的升級版本,增強了對面向?qū)ο蟮闹С帧5捎诟膭犹?,導致VB.net對VB的向后兼容性不好,在業(yè)界引起不小的爭議。 } ' VB.net與VB6.0的主要區(qū)別 { VB.Net需要在.Net Framework平臺上才能執(zhí)行,因此,大多的VB.Net程序員使用Visual Studio.Net作為IDE(integrated development environment-集成性的開發(fā)環(huán)境)開發(fā).net應用程序。 VB6生成的應用程序不需要.Net Framework框架的支持。 因此,使用VB.net開發(fā)的應用程序只能在裝有.Net Framework框架的系統(tǒng)中運行。 } ' VB.net與VB6.0的編程思想 { 網(wǎng)上流傳的VB與VB.net差別被過分夸大。其實VB.net改善的只是完整的面向?qū)ο笏枷耄?0%語法與VB6.0保持一致。 抽象、封裝、多態(tài)、繼承是面向?qū)ο笳Z言的四個基本屬性。VB6.0不支持繼承,而VB.NET則不然。所以,和C++一樣,VB.NET也是完全面向?qū)ο蟮木幊陶Z言。 } ' VB.net與VB6.0的應用前景(個人觀點 By 刺猬) ( 介于現(xiàn)在應用最為廣泛WindowsXP操作系統(tǒng)沒有預裝.net framework的原因,許多VB程序員采用VB6.0開發(fā)應用程序;但現(xiàn)在不一樣了,在未來,WindowsXP系統(tǒng)必將面臨淘汰。繼Vista以后,系統(tǒng)都預裝了.net framework框架,由此看來,微軟正在極力推崇使用.net技術(shù)?;蛟S,.net應用程序的開發(fā)在未來會有很大的發(fā)展前景。 }
求采納
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)無關(guān)的字節(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ù)的平臺無關(guān)性和可移植性。
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不支持宏定義