王楚
摘 要:Java語(yǔ)言經(jīng)過長(zhǎng)時(shí)間的開發(fā)與應(yīng)用,通過積累的經(jīng)驗(yàn)以及建議,正在不斷地進(jìn)行改進(jìn)與升級(jí),以獲得更加成熟的Java編程語(yǔ)言版本。正是因此,Java編程語(yǔ)言能夠在目前主流開發(fā)語(yǔ)言中贏得大多數(shù)編程開發(fā)人員的認(rèn)可與喜愛。本篇文章就Java編程語(yǔ)言的特點(diǎn)以及其技術(shù)發(fā)展進(jìn)行探析。
關(guān)鍵詞:Java編程語(yǔ)言;計(jì)算機(jī)軟件編程;軟件開發(fā)
引言:Java編程語(yǔ)言發(fā)布于1995年,是由Sun Microsystems公司開發(fā)。起初通過Java編程語(yǔ)言開發(fā)的HotJava瀏覽器就以具備跨平臺(tái)、動(dòng)態(tài)Web以及互聯(lián)網(wǎng)計(jì)算等特點(diǎn),在當(dāng)時(shí)互聯(lián)網(wǎng)Web開發(fā)理念上獲得一致好評(píng)。時(shí)至如今Java編程語(yǔ)言已經(jīng)逐漸成熟,因此其相對(duì)于其他編程語(yǔ)言的優(yōu)點(diǎn)已經(jīng)不在僅僅局限于在Web開發(fā)上,通過Java技術(shù)體系分層,開發(fā)人員可以使用不同體系的Java版本進(jìn)行網(wǎng)站,客戶端以及移動(dòng)端的應(yīng)用軟件和游戲開發(fā)等。因此在利用Java語(yǔ)言編程工具進(jìn)行開發(fā)之前,我們則需要對(duì)其語(yǔ)言特點(diǎn)進(jìn)行剖析,以便我們更加靈活的掌握這門編程語(yǔ)言的使用。
一、Java編程語(yǔ)言的特點(diǎn)
(一)面向?qū)ο?/p>
Java編程語(yǔ)言相對(duì)與C、C++編程語(yǔ)言在開發(fā)項(xiàng)目時(shí),是面向?qū)ο筮M(jìn)行開發(fā),而并非面向過程。因?yàn)镴ava編程語(yǔ)言采用“面向?qū)ο蟆保栽谶M(jìn)行編寫程序時(shí)主要采用“new”給不同類型的事件以及對(duì)象進(jìn)行分配內(nèi)存空間,通過Java系統(tǒng)對(duì)內(nèi)部資源進(jìn)行分配和調(diào)用,因此在進(jìn)行編寫程序時(shí),所需要書寫的代碼更加簡(jiǎn)練。而C語(yǔ)言就不同與Java編程語(yǔ)言,在開發(fā)時(shí)需要按照“面向過程”理念,對(duì)解決問題所需要的各個(gè)步驟進(jìn)行實(shí)現(xiàn),因?yàn)镴ava語(yǔ)言與C語(yǔ)言編程思想的不同,C語(yǔ)言不能支持Java編程語(yǔ)言“面向?qū)ο蟆敝欣^承,封裝以及多態(tài)的特性,因此需要執(zhí)行復(fù)雜的函數(shù)調(diào)用以及算法來(lái)實(shí)現(xiàn)功能[1]。
封裝是面向?qū)ο箝_發(fā)中重要一步,也是程序開發(fā)設(shè)計(jì)時(shí)的第一步,通俗意義上講就是將對(duì)象開發(fā)過程中或者實(shí)現(xiàn)特定功能時(shí)涉及到的屬性數(shù)據(jù)和方法以及函數(shù)裝進(jìn)一個(gè)集合中,就是所謂的class類。封裝的類在一定程度上實(shí)現(xiàn)了數(shù)據(jù)保護(hù),防止開發(fā)人員的誤操作導(dǎo)致其數(shù)據(jù)被破壞。因?yàn)榉庋b的類在進(jìn)行訪問時(shí),需要權(quán)限以及使用接口進(jìn)行訪問,不能被封裝類之外的程序或應(yīng)用直接訪問以及修改。
繼承在面向?qū)ο箝_發(fā)中起到的重要作用就是減少重復(fù)代碼的書寫量,提升代碼開發(fā)的效率和代碼質(zhì)量。在Java編程語(yǔ)言開發(fā)中,子類通過繼承父類的概念,通過Extends將父類的方法以及屬性進(jìn)行繼承。子類與父類的繼承,如果多個(gè)類的某個(gè)部分的功能相同,那么可以抽象出一個(gè)類出來(lái),把他們的相同部分都放到父類里,讓他們都繼承這個(gè)類。
多態(tài)在Java中主要分為引用多態(tài)和方法多態(tài)。引用多態(tài)的應(yīng)用主要是在利用調(diào)用屬性與方法是,可以有針對(duì)性的引用具體的對(duì)象進(jìn)行調(diào)用,在引用多態(tài)應(yīng)用中,子類重寫父類方法就是其典型案例。方法多態(tài)就是指引用多態(tài)的基礎(chǔ)上,可以具體到具體調(diào)用的類中的方法上,還可以根據(jù)需求在進(jìn)行調(diào)用時(shí)通過參數(shù)自主匹配到調(diào)用的方法,方法調(diào)用的具體應(yīng)用實(shí)例就是方法重載[2]。
(二)平臺(tái)無(wú)關(guān)性
Java編程語(yǔ)言的特點(diǎn)之一,跨平臺(tái)是指其語(yǔ)言的通用性,一次編譯,到處運(yùn)行,Java代碼可以在Windows、Linux、Mac等系統(tǒng)中運(yùn)行,因此可以展現(xiàn)Java編程語(yǔ)言強(qiáng)大的通用性。Java編程語(yǔ)言能達(dá)到平臺(tái)無(wú)關(guān)性,主要是憑借其語(yǔ)言規(guī)范性、Class文件以及JVMJava 虛擬機(jī)等功能實(shí)現(xiàn)的。具體的過程是,開發(fā)人員在利用開發(fā)工具進(jìn)行代碼書寫時(shí),例如IDEA,Myeclipse等工具中都有內(nèi)置有前端編譯器(Fornt End),主要的任務(wù)是將.java文件轉(zhuǎn)換成.class文件,然后通過JVM Java虛擬機(jī)實(shí)現(xiàn)后端編譯(Back End),將.class代碼轉(zhuǎn)換成機(jī)器語(yǔ)言[3]。
(三)可靠性和安全性
Java 編程語(yǔ)言成為主流編程語(yǔ)言的原因之一就是其可靠性與安全性,因?yàn)樵诂F(xiàn)代科學(xué)技術(shù)快速發(fā)展的現(xiàn)實(shí)社會(huì),技術(shù)的應(yīng)用永遠(yuǎn)都是一把雙刃劍,因此特別是在開發(fā)消費(fèi)以及需要涉及到消費(fèi)者隱私數(shù)據(jù)的軟件時(shí),編程語(yǔ)言的安全性以及可靠性則顯得尤為重要。Java安全模型概念的應(yīng)用,類似于“安全沙箱“,其內(nèi)部的組件是由類裝載器結(jié)構(gòu)、Class文件檢驗(yàn)器、JVM虛擬機(jī)內(nèi)置安全檢驗(yàn)以及安全管理器和Java API組成[4]。通過層層篩選以及代碼檢驗(yàn),能夠保證Java 代碼按照既定的語(yǔ)言規(guī)則進(jìn)行運(yùn)行,進(jìn)而防止因無(wú)效代碼或者具有破壞性的編譯器對(duì)Java 系統(tǒng)或者操作系統(tǒng)進(jìn)行破壞。
二、Java 編程語(yǔ)言的實(shí)際應(yīng)用
Java 編程語(yǔ)言的特點(diǎn)與優(yōu)勢(shì),都非常適合初學(xué)者作為第一門編程語(yǔ)言進(jìn)行學(xué)習(xí),進(jìn)而步入軟件開發(fā)工作中。針對(duì)Java編程語(yǔ)言的實(shí)際應(yīng)用,將用圖書館后臺(tái)管理案例進(jìn)行分析。首先根據(jù)項(xiàng)目開發(fā)流程,確定 項(xiàng)目為校園圖書館后臺(tái)管理系統(tǒng)。根據(jù)瀑布模型,先做調(diào)研根據(jù)需求確定功能,然后根據(jù)既定的功能進(jìn)行項(xiàng)目開發(fā)。項(xiàng)目開發(fā)所運(yùn)用的工具有Myeclipse、HBuilder以及SQL server數(shù)據(jù)庫(kù)。
(一)Java - Web 圖書館后臺(tái)管理系統(tǒng)
該Java - Web 圖書館后臺(tái)管理系統(tǒng)的開發(fā)采用的是開源的Struts框架,mvc設(shè)計(jì)模式,通過SSH框架實(shí)現(xiàn)數(shù)據(jù)庫(kù)的無(wú)縫銜接,利用Jsp進(jìn)行網(wǎng)頁(yè)設(shè)計(jì)。在進(jìn)行項(xiàng)目設(shè)計(jì)時(shí),確定該項(xiàng)目主要實(shí)現(xiàn)的模塊與功能有六項(xiàng),系統(tǒng)配置管理、管理員模式、讀者模式、圖書借還、系統(tǒng)查詢以及圖書更新。
在項(xiàng)目開發(fā)過程中,利用Java語(yǔ)言面向?qū)ο箝_發(fā)的理念,首先需要搭建環(huán)境,導(dǎo)入Struts、Spring和Hibernate環(huán)境,然后搭建起SSH框架。然后利用Hibernate逆向工程生成實(shí)體類,以及其映射文件,然后按照一下步驟進(jìn)行功能實(shí)現(xiàn)的步驟進(jìn)行代碼開發(fā)。首先在Action類的進(jìn)行返回值為string類型方法的編寫,并且確定此功能方法中sql語(yǔ)句中是否需要傳參。然后進(jìn)行Service類編寫,根據(jù)sql語(yǔ)法中增刪改查的理念,確定方法是用集合list接受還是int類型接受,并且編寫好返回struts中的值。最后編寫dao層,編寫方法,開啟會(huì)話,編寫sql語(yǔ)句,如功能涉及增刪改需要開啟事務(wù),否則略過此步,然后進(jìn)行創(chuàng)建查詢對(duì)象,并進(jìn)行賦值,最后執(zhí)行,若開啟事務(wù),則需要進(jìn)行提交事務(wù)。根據(jù)此框架開發(fā)模式,可以對(duì)Java-web 圖書館后臺(tái)管理系統(tǒng)的功能及模塊進(jìn)行逐一實(shí)現(xiàn)和完成。
結(jié)束語(yǔ):根據(jù)全文對(duì)Java編程語(yǔ)言特點(diǎn)以及其技術(shù)的探究分析,可以發(fā)現(xiàn)Java 編程語(yǔ)言不僅較C、C++等傳統(tǒng)語(yǔ)言在移動(dòng)或者客戶端軟件開發(fā)上存在一定的便捷與優(yōu)勢(shì),而且Java編程語(yǔ)言在學(xué)習(xí)上也較為簡(jiǎn)單,對(duì)英語(yǔ)能力要求不高,而且在起步學(xué)習(xí)階段也對(duì)算法等知識(shí)要求較低,所以適合編程語(yǔ)言初學(xué)者進(jìn)行學(xué)習(xí)。正是因?yàn)镴ava 編程語(yǔ)言逐步成熟穩(wěn)定,以及其安全穩(wěn)定無(wú)平臺(tái)性等特點(diǎn),進(jìn)而促成其成為主流編程語(yǔ)言,走向給全世界。
參考文獻(xiàn):
[1]王會(huì)芳,武變霞.計(jì)算機(jī)軟件開發(fā)中Java編程語(yǔ)言的應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2018,3602:47+49.
[2]吳文慶.計(jì)算機(jī)軟件JAVA編程優(yōu)勢(shì)及其應(yīng)用研究[J].職業(yè)技術(shù),2019,1807:96-99.
[3]胡其榮.計(jì)算機(jī)軟件Java編程特點(diǎn)及其技術(shù)思考探析[J].電腦編程技巧與維護(hù),2019,06:43-44+80.
[4]謝會(huì)娜.計(jì)算機(jī)軟件開發(fā)中JAVA編程語(yǔ)言的應(yīng)用[J].電子技術(shù)與軟件工程,2017,01:62.