java基礎(chǔ)第一課

電腦語言發(fā)展:

第一代:機器語言-》第二代:匯編語言-》第三代:高級語言

匯編語言:結(jié)構(gòu)不好,出來很多高級語言(面向?qū)ο蠛窳⒚嫦蜻^程(B->C語言(貝爾)->C++))

高級語言:fortran(IBM); C#:小型項目;

JAVA特性:一次編寫别垮,各處運行。(完全面向?qū)ο螅?/b>

一茬贵、 概述

a) The Source for JAVATM technology: www.sun.com

b) 過程中一定要查java api文檔移袍。

c) 誕生于1991老充,sun公司啡浊,原名Oak(橡樹)。

d) 應用領(lǐng)域

1>*企業(yè)級應用:地圖喘先,電力系統(tǒng)廷粒,華為(協(xié)議封裝(好維護)),大型ERP系統(tǒng)后臺涤姊。

2>大型應用服務器:oracle, application思喊,server, IBM webspere, bea weblogic.

3>無線領(lǐng)域:WAP CATE

4>嵌入式領(lǐng)域:手機游戲次酌,JAVA芯片

5>JAVA圖形:CIS平臺客戶端

二舆乔、 優(yōu)點

1. 簡單:

風格類似c++蜕煌;摒棄了C++中容易引發(fā)程序錯誤的地方斜纪。

2.面向?qū)ο螅?/p>

支持靜態(tài)和動態(tài)風格的代碼繼承及重用

3. 健壯(用戶不管怎么輸入都不會出現(xiàn)異常)

4. 多線程(線程調(diào)動機制不一樣文兑,產(chǎn)生的結(jié)果不定,控制問題)*(線程安全問題因块,悲觀鎖涡上,樂觀鎖)

5. 結(jié)構(gòu)中立跨平臺(java核心優(yōu)勢)

6. 安全

7. **一次編寫吩愧,到處運行**

克服c的問題,GC垃圾回收改善內(nèi)存泄漏雁佳。單一繼承糖权。指針問題炸站。

缺點:效率低。內(nèi)存耗量大(硬件要求高)禁偎。

三届垫、JAVA應用程序運行機制

1.計算機的高級編程語言類型

1>編譯型:C語言(效率高,一次性把源程序編譯成機器語言直接執(zhí)行装处,結(jié)構(gòu)化語言,需求變化不大寝蹈,底層變化不大)

2>解釋型:Basic語言

2.JAVA是兩種語言的結(jié)合(面向?qū)ο蟮翘裕枨笞兓欢ǎ?/p>

??????????**JAVA虛擬機**

先編譯成虛擬機接受的字節(jié)碼文件黔州,虛擬機再相應的具體的機器系統(tǒng)解釋成指令流妻。

? ? ? **每個系統(tǒng)對應一個虛擬機**

需要為每一個執(zhí)行系統(tǒng)提供一個虛擬機(統(tǒng)一規(guī)范,按Java標準)涣达,同一個程序在四個操作系統(tǒng)上運行证薇,提供四個虛擬機(優(yōu)點:上層都符合同樣的規(guī)范浑度,拿到相同的字節(jié)碼文件。

缺點:效率低疗认,轉(zhuǎn)化編譯又解釋JAVA缺點)

3.JAVA源程序伏钠,字節(jié)碼文件熟掂,機器碼指令赴肚。

四·JAVA的平臺相關(guān)性

1.JAVA源代碼和字節(jié)碼的與機器無關(guān)的

2.JVM是與機器相關(guān)的

3.裝有不同操作系統(tǒng)的機器上誉券,需要有專門為該操作系統(tǒng)開發(fā)的JVM.

七.JAVA的垃圾回收機制(GC)

**垃圾收集GC**

(后臺線程)程序執(zhí)行過程中對內(nèi)存使用情況跟蹤踊跟,當對象長時間無人使用時商玫,自動進行(除非對象被設(shè)置為持久態(tài))。

優(yōu)點:改善內(nèi)存泄漏

缺點;效率低

**Java能真正避免內(nèi)存泄漏嗎?**

答:(c語言容易出現(xiàn):內(nèi)存使用不當拳昌,內(nèi)存泄漏炬藤,系統(tǒng)崩潰。)不能畅买,只能改善谷羞。內(nèi)存泄漏仍是國際難題。

八.?Java分為兩類(applet小應用程序(較少使用不安全)湃缎,應用程序application)?

九.Java應用程序

*4.虛擬機就是一種規(guī)范。主方法是虛擬機的入口图贸。虛擬機只能通過類找主方法疏日,因為最開始是沒有對象的。

??? 會向主方法棧幀里傳參數(shù)涕滋,空數(shù)組對象宾肺,類型string。(沒有任何一個元素)標準類庫里類中找string類型锨用,創(chuàng)建string類型的變量s.

**String類型和string[]類型**

????String[]類型(args輸出string[]類型的對象的地址增拥,返回的就是string[]類型跪者,加載了string[]類型的字節(jié)碼文件棵帽。傳一個string[]類型字符串數(shù)組對象(空數(shù)組對象無元素))

字節(jié)碼文件:不一定是主類的字節(jié)碼文件,但一定包含主方法渣玲。

HelloWorld運行原理及過程

Java HelloWorld 找到字節(jié)碼文件

Javac HelloWorld.java 只有一個類編譯成一個字節(jié)碼文件逗概。

**helloworld有幾個文件幾個對象幾個類**

兩個文件:源文件,字節(jié)碼文件(分為四個;string文件忘衍,string[]文件逾苫,HelloWord.class,system文件枚钓。)

五個對象:空對象铅搓,HelloWorld常對象,三個輸入輸出流對象(標準字節(jié)輸出流對象system.out ?????/system.in鍵盤輸入/system.err顯示器)

三個方法:main方法搀捷,println方法星掰,to string方法

兩個變量:局部變量:args ; s

一個類:helloworld

零個屬性

過程:

省略了導包(默認)Java.Lang.*.包在標準類庫中的lang包中找對象。

1.虛擬機加載helloworld播玖,加載內(nèi)存字節(jié)碼文件,找主方法果覆,用static通過類找主方法且公有public執(zhí)行主方法八千,虛擬機不需要接收返回值(void),主方法不要給虛擬機返回值照皆。

虛擬機會向主方法傳參膜毁,將局部變量s定為形參(沒有確切的值,賦予null)倒淫,參數(shù)為一個字符串數(shù)組對象new String[0],

參考上圖⊙剩空數(shù)組對象無元素有值。

2.執(zhí)行string s该默,string.class,建string類型的變量,到j(luò)dk里的標準類庫里找到string的字節(jié)碼文件和緩沖內(nèi)存,加載內(nèi)存的內(nèi)方法區(qū),(args類型也是string[].class,)

?? 找到string類型局部變量s, ?string.class, s在棧中,s在方法里值是不定的(string會復寫s的值),當方法區(qū)中常量池無helloworld時建一個helloworld字符串對象买鸽。對象的返回值即使對象的值又是對象的地址引用距離,對象的值返回的是對象的地址批旺,字符串常量字符串對象理論上在堆朱沃,這個對象特殊。將這個字符串對象給s。輸出失暴。

3.在堆上創(chuàng)建三個輸入輸出對象欠橘,system.out標準字節(jié)輸出流對象等黍檩。

4.調(diào)用println()方法輸出s的值,即helloworld的地址,沒有真正輸出地址殿怜。Jdk會自動調(diào)用string對象的to string方法,直接輸出對象里的字符串甲脏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末墩新,一起剝皮案震驚了整個濱河市臣疑,隨后出現(xiàn)的幾起案子脸秽,更是在濱河造成了極大的恐慌囚衔,老刑警劉巖辽俗,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件翰蠢,死亡現(xiàn)場離奇詭異酥泞,居然都是意外死亡贩毕,警方通過查閱死者的電腦和手機谆甜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門侍郭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來煮甥,“玉大人,你說我怎么就攤上這事掀宋∷敉荆” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長医舆。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么豫尽? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任论咏,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蜀变。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布腿箩。 她就那樣靜靜地躺著乾颁,像睡著了一般诅需。 火紅的嫁衣襯著肌膚如雪场刑。 梳的紋絲不亂的頭發(fā)上科乎,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天影斑,我揣著相機與錄音残邀,去河邊找鬼皆辽。 笑死,一個胖子當著我的面吹牛蹋砚,可吹牛的內(nèi)容都是我干的坝咐。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼历恐!你這毒婦竟也來了檬嘀?” 一聲冷哼從身側(cè)響起衷掷,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤柿菩,失蹤者是張志新(化名)和其女友劉穎戚嗅,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體枢舶,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡懦胞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了祟辟。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片医瘫。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖旧困,靈堂內(nèi)的尸體忽然破棺而出醇份,到底是詐尸還是另有隱情稼锅,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布僚纷,位于F島的核電站矩距,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏怖竭。R本人自食惡果不足惜锥债,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望痊臭。 院中可真熱鬧哮肚,春花似錦、人聲如沸广匙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸦致。三九已至潮剪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間分唾,已是汗流浹背抗碰。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留绽乔,地道東北人弧蝇。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像迄汛,于是被迫代替她去往敵國和親捍壤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 包(lib)鞍爱、模塊(module) 在Python中,存在包和模塊兩個常見概念专酗。 模塊:編寫Python代碼的py...
    清清子衿木子水心閱讀 3,805評論 0 27
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5睹逃? 答:HTML5是最新的HTML標準。 注意:講述HT...
    kismetajun閱讀 27,485評論 1 45
  • Django 1.4 事務默認模式是autocommit模式,每個查詢都相當于一個事務,每次查詢都直接提交comm...
    大富帥閱讀 6,066評論 1 1
  • 切斷蠱惑人心的“三毒” 抑制私心祷肯,為世人為社會盡力沉填,將“純潔的心靈”釋放。好像是極其簡單的佑笋,但是現(xiàn)實中翼闹,我們很多時...
    sandy201704閱讀 259評論 0 0
  • 有一個雞蛋,非常天真的嫁給了石頭蒋纬,在一起磕磕碰碰N年猎荠。弄的自己身上傷痕累累坚弱,但雞蛋一直堅持著,終于有一天雞蛋受不了...
    素美貝兒閱讀 212評論 0 1