亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Java知識(shí)層次的介紹

        2013-12-31 00:00:00楊毅
        無(wú)線互聯(lián)科技 2013年12期

        摘 要:Java作為目前最流行的程序設(shè)計(jì)語(yǔ)言,其龐大的知識(shí)體系讓很多初學(xué)者感到迷惑,本文從常規(guī)知識(shí)、微觀知識(shí)和宏觀知識(shí)三個(gè)層次對(duì)Java內(nèi)容進(jìn)行介紹和分析。

        關(guān)鍵詞:Java虛擬機(jī);設(shè)計(jì)模式;內(nèi)存分配

        Java作為一門面向?qū)ο蟮恼Z(yǔ)言,在過(guò)去十年中取得了其它語(yǔ)言所無(wú)法比擬的成績(jī),Java以其簡(jiǎn)單、面向?qū)ο?、可移植性、安全性等特點(diǎn),成為了現(xiàn)在最主流的開(kāi)發(fā)語(yǔ)言之一。

        1 常規(guī)知識(shí)

        Java常規(guī)知識(shí)指的是:Java基本語(yǔ)法、類和對(duì)象的概念及特征、接口、抽象類與包的運(yùn)用、Java API等等。

        (1)基本語(yǔ)法。包括變量定義、操作符運(yùn)用、數(shù)組、控制流等,其中大部分的內(nèi)容與其它語(yǔ)言類似,比如學(xué)習(xí)C語(yǔ)言時(shí)涉及到的控制流。

        (2)類和對(duì)象。Java的最核心概念,包括面向?qū)ο蟮娜齻€(gè)基本特征:封裝、繼承、多態(tài),以及this、super、static、final等關(guān)鍵字的運(yùn)用。

        (3)JavaAPI。Java API是運(yùn)行庫(kù)的集合,它提供了一套訪問(wèn)主機(jī)系統(tǒng)資源的標(biāo)準(zhǔn)方法,運(yùn)行Java程序時(shí),虛擬機(jī)裝載程序的class文件所使用的Java API class文件,所有被裝載的class文件和所有已經(jīng)裝載的動(dòng)態(tài)庫(kù)共同組成了在Java虛擬機(jī)上運(yùn)行的整個(gè)程序。

        2 Java微觀知識(shí)

        Java微觀知識(shí)指的是:Java的工作原理、Java虛擬機(jī)的運(yùn)行方式、程序在內(nèi)存中的存儲(chǔ)等內(nèi)容。

        (1)Java虛擬機(jī)。是運(yùn)行所有Java程序的抽象計(jì)算機(jī),是Java語(yǔ)言的運(yùn)行環(huán)境,是Java語(yǔ)言底層實(shí)現(xiàn)的基礎(chǔ),對(duì)于Java虛擬機(jī)的了解,有助于理解Java語(yǔ)言的一些性質(zhì),也有助于使用Java語(yǔ)言。

        Java虛擬機(jī)的主要任務(wù)是裝在class文件并且執(zhí)行其中的字節(jié)碼。Java虛擬機(jī)包含一個(gè)類裝載器,它可以從程序和 API中裝載class文件,Java API中只有程序執(zhí)行時(shí)需要的那些類才會(huì)被裝載,字節(jié)碼由執(zhí)行引擎來(lái)執(zhí)行。不同的Java虛擬機(jī)中,執(zhí)行引擎可能實(shí)現(xiàn)得非常不同,在由軟件實(shí)現(xiàn)的虛擬機(jī)中,最簡(jiǎn)單的執(zhí)行引擎就是一次性解釋字節(jié)碼。

        (2)Java在內(nèi)存分配時(shí)涉及到的區(qū)域。寄存器:寄存器是內(nèi)存階層中的最頂端,也是系統(tǒng)獲得操作資料的最快速途徑,可用來(lái)暫存指令、數(shù)據(jù)和位址,程序人員無(wú)法控制。

        棧:存放基本類型的數(shù)據(jù)和對(duì)象的引用,但對(duì)象本身不存放在棧中,而是存放在堆中。在函數(shù)中定義的一些基本類型的變量數(shù)據(jù)和對(duì)象的引用變量都在函數(shù)的棧內(nèi)存中分配。棧的優(yōu)勢(shì)是,存取速度比堆要快,僅次于寄存器,棧數(shù)據(jù)可以共享。但缺點(diǎn)是,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,缺乏靈活性。

        堆:存放用new關(guān)鍵字所產(chǎn)生的對(duì)象。Java的堆是一個(gè)運(yùn)行時(shí)數(shù)據(jù)區(qū),對(duì)象被存儲(chǔ)在堆中。這些對(duì)象通過(guò)new等指令建立,它們不需要程序代碼來(lái)顯式的釋放。堆是由垃圾回收來(lái)負(fù)責(zé)的,堆的優(yōu)勢(shì)是可以動(dòng)態(tài)地分配內(nèi)存大小,生存期也不必事先告訴編譯器,因?yàn)樗窃谶\(yùn)行時(shí)動(dòng)態(tài)分配內(nèi)存的,Java的垃圾收集器會(huì)自動(dòng)收走這些不再使用的數(shù)據(jù)。

        靜態(tài)域:存放在對(duì)象中用static定義的靜態(tài)成員。

        常量池:存放常量,指的是在編譯期被確定,并被保存在已編譯的.class文件中的一些數(shù)據(jù)。除了包含代碼中所定義的各種基本類型(如int、long等等)和對(duì)象型(如String)的常量值。

        (3)Java class文件。Java class文件主要在平臺(tái)無(wú)關(guān)性和網(wǎng)絡(luò)移動(dòng)性方面使Java更適合網(wǎng)絡(luò),它在平臺(tái)無(wú)關(guān)性方面的任務(wù)是:為Java程序提供獨(dú)立于底層主機(jī)平臺(tái)的二進(jìn)制形式的服務(wù),這種途徑途徑打破了C或者C++等語(yǔ)言所遵循的傳統(tǒng),使用這些傳統(tǒng)語(yǔ)言寫(xiě)的程序通常首先被編譯,然后被連接成單獨(dú)的、專門支持特定硬件平臺(tái)和操作系統(tǒng)的二進(jìn)制文件。

        3 Java宏觀知識(shí)

        Java的宏觀知識(shí)指的是:Java的設(shè)計(jì)模式和設(shè)計(jì)原則。設(shè)計(jì)原則和設(shè)計(jì)模式就是在大量的實(shí)踐中總結(jié)和理論化之后優(yōu)選的代碼結(jié)構(gòu)、編程風(fēng)格及解決問(wèn)題的思考方式。模式有助于提高思考層次,改變學(xué)習(xí)思維定式,成為更加高效的程序人員。

        Java的設(shè)計(jì)模式過(guò)多,在這里只介紹一些常用模式:適配器模式、工廠模式、代理模式。

        (1)適配器模式。適配器模式:把一個(gè)類的接口變換成客戶端所期待的另一種接口,從而使原本因接口原因不匹配而無(wú)法一起工作的兩個(gè)類能夠一起工作。適配類可以根據(jù)參數(shù)返還一個(gè)合適的實(shí)例給客戶端。

        (2)工廠模式??蛻纛惡凸S類分開(kāi)。消費(fèi)者任何時(shí)候需要某種產(chǎn)品,只需向工廠請(qǐng)求即可。消費(fèi)者無(wú)須修改就可以接納新產(chǎn)品。缺點(diǎn)是當(dāng)產(chǎn)品修改時(shí),工廠類也要做相應(yīng)的修改。

        (3)代理模式。代理模式給某一個(gè)對(duì)象提供一個(gè)代理對(duì)象,并由代理對(duì)象控制對(duì)源對(duì)象的引用。代理就是一個(gè)人或一個(gè)機(jī)構(gòu)代表另一個(gè)人或者一個(gè)機(jī)構(gòu)采取行動(dòng)。某些情況下,客戶不想或者不能夠直接引用一個(gè)對(duì)象,代理對(duì)象可以在客戶和目標(biāo)對(duì)象直接起到中介的作用??蛻舳朔直娌怀龃碇黝}對(duì)象與真實(shí)主題對(duì)象。代理模式可以并不知道真正的被代理對(duì)象,而僅僅持有一個(gè)被代理對(duì)象的接口,這時(shí)候代理對(duì)象不能夠創(chuàng)建被代理對(duì)象,被代理對(duì)象必須有系統(tǒng)的其他角色代為創(chuàng)建并傳入。

        [參考文獻(xiàn)]

        [1]袁紹欣.面向?qū)ο蟪绦蛟O(shè)計(jì)[M].北京:清華大學(xué)出版社,2007.

        [2]葉鋒,連進(jìn).Java程序設(shè)計(jì)教學(xué)研究[J].湖北經(jīng)濟(jì)學(xué)院學(xué)報(bào)(人文社會(huì)科學(xué)版),2010,7(9):207-208.

        [3]劉克成.Java程序設(shè)計(jì)簡(jiǎn)明教程[M].北京:中國(guó)電力出版社,2009.

        [4]葉核亞.Java程序設(shè)計(jì)實(shí)用教程[M].3版.北京:電子工業(yè)出版社,2010.

        精品中文字幕久久久人妻| 亚洲 欧美 激情 小说 另类| 久久综合网天天 | 日本一区二区久久精品亚洲中文无 | 在线观看视频日本一区二区| 人妻熟女一区二区三区app下载| 亚洲欧美日韩精品高清| 日产精品一区二区免费| 亚洲色图专区在线视频| 欧美人妻少妇精品久久黑人| 欧美另类视频在线| 日韩精品夜色二区91久久久| 久久婷婷综合缴情亚洲狠狠| 精品国产乱码久久久久久影片| 中文人妻无码一区二区三区信息 | 2022国内精品免费福利视频| 在线看高清中文字幕一区| 少妇久久久久久被弄高潮| 竹菊影视欧美日韩一区二区三区四区五区 | 少妇高潮惨叫久久久久久电影| 91视频免费国产成人| 麻豆夫妻在线视频观看| 亚洲综合网国产精品一区| 日产精品久久久久久久性色| 亚洲色婷婷综合开心网| 亚州中文热码在线视频| 久久精品夜色国产亚洲av| 国产在视频线精品视频www666| 亚洲美女av二区在线观看| 久久久久久夜精品精品免费啦| 日韩成人极品在线内射3p蜜臀| 欧美手机在线视频| 国产白色视频在线观看| 日韩丰满少妇无码内射| 无码人妻少妇久久中文字幕蜜桃 | 大又大粗又爽又黄少妇毛片| 亚洲精品一二区| 日本一级三级在线观看| 人妻少妇精品视频三区二区一区| a毛片全部免费播放| 精品女同一区二区三区免费播放 |