2019.3.4 21:04 二刷結(jié)束留念
????????作為一個文娛生活很豐富的技術小白的計算機研二碩士在讀研究生撕彤,未來的程序媛羹铅,已經(jīng)慢慢感受到了一年后的求職壓力。笨鳥要先飛焊切,何況已經(jīng)不早了o(╥﹏╥)o從今天起专肪,立志在未來不到一年的時間內(nèi)實現(xiàn)從技術小白到能夠掌握基本技術的逆襲嚎尤!
? ? ? ? 這周從周一就各種開始做功課,看了很多面經(jīng)收奔,也咨詢了很厲害的學長,經(jīng)過好幾天的猶豫和糾結(jié)势篡,最終決定學習JAVA念祭。因為實驗室是做C++的粱坤,中間有猶豫過要不要學C++站玄,但考慮到自己對以后的求職還是更傾向于JAVA崗一點,而且以前也對JAVA基礎有過了解晾剖,對這門語言比較有好感齿尽。實驗室的項目都是有針對性的雕什,對相應的項目所需要的知識缺什么補什么即可贷岸,但校招不同偿警,要求對知識有系統(tǒng)全面的掌握,精力有限七嫌,只能夠精學一門語言诵原,權(quán)衡之下還是學習針對校招的JAVA蔓纠。
? ? ? ? 具體的學習計劃還在和有經(jīng)驗的學長溝通中腿倚,希望能夠吸取他的經(jīng)驗障本,小白入門先從基礎視頻教程看起阿宅,視頻對于小白來說更好上手一些,有一個初步的認識之后再系統(tǒng)的看書~
? ? ? ? 寫這個筆記的初衷墨状,一方面是便于自己總結(jié)和記錄所學的知識點肾砂,另一方面是激勵自己能夠堅持下去。
? ? ? ? 我看的是畢向東JAVA基礎視頻源葫,接下來是跟著視頻學習做的筆記:
????01-基本常識
????軟件開發(fā)
? ? ? ? 什么是軟件?
? ? ? ? 軟件:一系列按照特定順序組織的計算機數(shù)據(jù)和指令的集合荣堰。
? ? ? ? 我們之所以制作軟件振坚,就是為了處理現(xiàn)實生活中的數(shù)據(jù)啃洋,處理的時候就需要有一些指令來幫我們操作。所以軟件其實就是數(shù)據(jù)和指令的融合體。
? ? ? ? 常見的軟件:
? ? ? ? 系統(tǒng)軟件:windows貌踏,Linux祖乳,DOS(微軟靠它發(fā)的家)等。
? ? ? ? 有了操作系統(tǒng)就可以了嗎亚斋?并不是,需要做一些自己喜歡玩的東西赖瞒,這時就涉及到應用軟件了蚤假。
? ? ? ? 應用軟件:掃雷栏饮,迅雷,QQ等磷仰。
? ? ? ? 什么是開發(fā)抡爹?
????????開發(fā)就是制作軟件,做一些軟件給其他人使用冬竟。
????人機交互
? ? ? ? 軟件的出現(xiàn)實現(xiàn)了人與計算機之間的更好的交互。人對計算機進行操作民逼,計算機可以反應出人想要的內(nèi)容泵殴。
? ? ? ? 交互方式:
? ? ? ? 有兩種:
? ? ? ? 圖形化界面:這種方式簡單直觀,容易上手拼苍,使用者易于接受笑诅。
? ? ? ? 命令行方式(DOS):需要有一個控制臺调缨,輸入特定的指令,讓計算機完成一些操作吆你。這個操作必須記住很多命令弦叶,才能讓計算機做一些事情。
? ? ? ? 命令行方式
? ? ? ? dos命令行妇多,不是我們重點要學的伤哺,因為這些指令很多人已經(jīng)不去記憶了,都通過圖形化界面來完成者祖。這門基礎課的初期會涉及一些dos命令的操作立莉,下面是課程中常見的命令:
? ? ? ? dir:列出當前目錄下的文件以及文件夾。
? ? ? ? md:創(chuàng)建目錄七问。
? ? ? ? rd:刪除目錄蜓耻。
? ? ? ? cd:進入指定目錄。
? ? ? ? cd..:退回到上一級目錄械巡。
? ? ? ? cd\:退回到根目錄刹淌。
? ? ? ? del:刪除文件。
? ? ? ? exit:退出dos命令行讥耗。
? ??????示例:
? ? ? ? 開始-運行->輸入:cmd 打開一個dos窗口芦鳍。? ? ??
? ? ? ? 在這里面就可以做一些操作啦。首先輸入:cd\ 葛账,切換到C盤柠衅。?輸入:dir,列出當前目錄下的文件以及文件夾籍琳,在dos下看到C盤中的目錄菲宴。
? ? ? ? 對文件夾的操作:
? ? ? ? 輸入:md kkk,在C盤中創(chuàng)建了一個名為kkk的文件夾趋急,其實和圖形化界面操作一樣的道理喝峦,只是操作方式不同了。輸入:rd kkk呜达,刪除該文件夾谣蠢。輸入:cd data,md op查近,進入data文件夾眉踱,并在里面創(chuàng)建一個名為op的文件夾。輸入:cd..霜威,返回上一級目錄谈喳。cd..就是在一層一層的往回退。輸入:cd\戈泼,直接退到根目錄婿禽。輸入:del op赏僧,op是一個目錄,會提示是否確認(Y/N)扭倾?會刪除op這個文件夾中的所有文件淀零,但是op這個文件夾還在。
????????在dos命令中刪除文件夾膛壹,必須要保證文件夾是空的驾中,否則無法刪除,要進入文件夾中恢筝,把里面的文件都刪掉哀卫,再退出去用rd命令巨坊,或者用del+文件夾名一次性刪除文件夾里的所有文件撬槽,最后才能刪除這個文件夾。
? ? ? ? 對文件的操作:
? ? ? ? 輸入:cd data\op趾撵,進入該目錄侄柔,輸入:echo haha>1.txt,創(chuàng)建了一個名稱為1的txt文檔占调,里面的內(nèi)容為haha暂题。甚至還可以用edit命令來編輯文檔,這里不做重點掌握究珊。輸入:del 1.txt薪者,刪除該文件。在dos命令行中刪文件剿涮,是不走回收站的言津。? 輸入:del *.txt,這個目錄中只要是txt擴展名的文件就全部被刪掉了取试。
? ? ? ? 想退出dos命令行悬槽,可以直接關閉對話框,或者用更有技術含量的方法(emmm)瞬浓,輸入:exit初婆。? ?
? ? ? ? 這些操作命令其實不用特意背,多操作幾遍就熟啦猿棉。
????????我們通過dos命令行方式也能完成圖形化界面的操作磅叛,其實操作圖形化界面底層用的也是這些命令,它只不過為了讓用戶操作更簡單萨赁,不用去記錄這些命令宪躯,而是通過在圖形化界面中的鼠標點擊的形式來完成。
????計算機語言
? ? ? ? 我們想要自己制作一個軟件位迂,實現(xiàn)讓別人拿著這個軟件和計算機交互访雪,這個交互的過程详瑞,其實就是人和計算機進行交流。在dos命令行中臣缀,如果命令寫錯了坝橡,計算機就不幫你執(zhí)行,你必須寫一些計算機能夠識別的東西精置,它才會幫你執(zhí)行计寇。這就是計算機語言。
? ? ? ? 你想和韓國人說話要學韓語脂倦,想和日本人說話要學日語番宁,想和計算機說話就要學計算機語言。
? ? ? ? 計算機語言有很多種赖阻,如:C蝶押,C++,Java等火欧。
? ? ? ? 我們要學的就是Java語言棋电。
? ? ? ? 我們只要按照Java語言的語法規(guī)則寫東西,計算機就能識別苇侵。
????????和人說的語言相比赶盔,計算機語言好學很多,因為計算機說的語言是固定的榆浓,非常嚴謹于未,只要按規(guī)則說就好,人類的語言就很多變了~
? ? ? ? 因此先從語言的規(guī)則開始學起陡鹃。
????02-Java的跨平臺性
? ? Java語言概述
? ? ? ? 是SUN(Stanford University Network烘浦,斯坦福大學網(wǎng)絡公司)1995年推出的一門高級編程語言。
? ? ? ? 是一種面向Internet的編程語言杉适。網(wǎng)絡興起的時候谎倔,它推出來,對網(wǎng)絡的貢獻非常的大猿推。
? ? ? ? 隨著Java技術在web方面的不斷成熟片习,已經(jīng)成為Web應用程序的首選開發(fā)語言。
? ? ? ? 是簡單易學蹬叭,完全面向?qū)ο笈河剑踩煽浚c平臺無關的編程語言秽五。這里的平臺指的是操作系統(tǒng)孽查。
????Java語言的三種技術架構(gòu)
? ? ????它比較具有廣泛性,涉獵的方向非常的多坦喘,所以很多地方都在用盲再。? ? ?
? ? ? ? J2EE(Java 2 Platform Enterprise Edition)企業(yè)版? ? ? ??
? ? ? ? JAVAEE是為開發(fā)企業(yè)環(huán)境下的應用程序提供的一套解決方案西设。
? ? ? ? 該技術體系中包含的技術如Servlet Jsp等,主要針對于Web應用程序開發(fā)答朋。
? ??????Java5.0版本后贷揽,已經(jīng)更名為JAVAEE啦。我們以后工作了就是JAVAEE程序員~
? ? ? ? J2SE(Java2 Platform Standard Edition)標準版
? ? ? ? 是為開發(fā)普通桌面和商務應用程序提供的解決方案梦碗。
? ? ? ? 該技術體系是其他兩者的基礎禽绪,可以完成一些桌面應用程序的開發(fā)。比如Java版的掃雷洪规。
? ? ? ? Java5.0版本后印屁,更名為JAVASE。這個是基礎版本斩例,我們現(xiàn)在學的就是這個版本雄人。
? ? ? ? J2ME(Java 2 Platform Micro Edition)小型版
? ? ? ? 是為開發(fā)電子消費產(chǎn)品和嵌入式設備提供的解決方案。
? ? ? ? 該技術體系主要應用于小型電子消費類產(chǎn)品樱拴,如手機中的應用程序等柠衍。
? ? ? ? Java5.0版本后洋满,更名為JAVAME晶乔。
????Java語言的特點:跨平臺性
? ? ? ? 什么是跨平臺性?
? ? ? ? 通過Java語言編寫的應用程序在不同的系統(tǒng)平臺上都可以運行牺勾。
????????所謂的平臺是指操作系統(tǒng)正罢,我們做出來的軟件會在操作系統(tǒng)上運行,做軟件有很多種方式驻民,有很多種語言都能完成翻具。Java的最大特點在于,用這種語言做的軟件回还,在Windows系統(tǒng)上可以執(zhí)行裆泳,在Linux系統(tǒng)上也可以執(zhí)行,這就是跨平臺性柠硕。C++做的軟件工禾,只能在Windows上執(zhí)行,在Linux上就執(zhí)行不了蝗柔。
? ? ? ? 原理是什么闻葵?
? ? ? ? 只要在需要運行java程序的操作系統(tǒng)上,先安裝一個Java虛擬機(JVM Java Virtual Machine)即可癣丧。由JVM來負責Java程序在該系統(tǒng)中的運行槽畔。
? ? ? ? 它之所以可以跨平臺運行,就是有一個獨立的可以解析Java程序的解析器胁编。? ? ? ??
? ? ? ? 那么問題來了厢钧,虛擬機跨平臺嗎鳞尔?虛擬機依賴于平臺嗎?虛擬機依賴于平臺早直。Windows系統(tǒng)的內(nèi)核和Linux不一樣铅檩,虛擬機有可能調(diào)用到系統(tǒng)底層的東西,它需要針對不同的系統(tǒng)來編寫一個虛擬機莽鸿,所以虛擬機是分版本的昧旨,Windows版和Linux版的虛擬機是不一樣的。但是Java程序是不用變的祥得。
? ? ? ? 在歐美用戶的電腦中兔沃,裝的不只是Windows系統(tǒng),在編寫軟件時级及,大家的首選語言就是Java乒疏,因為它做的軟件各個系統(tǒng)都能用。
? ? ? ? C++是微軟的語言饮焦,C++的軟件放在Windows中可以執(zhí)行怕吴,是因為Windows中有一個可以解析C++程序的虛擬機,所以Windows對C++的支持是非常好的县踢。Windows本身也是用C和C++寫的转绷。
????03-Java環(huán)境搭建(安裝)
????Java語言的環(huán)境搭建
? ? ? ? 明確什么是JRE硼啤,JDK
? ? ? ? JRE(Java Runtime Environment? Java運行環(huán)境):
? ? ? ? 其中包括Java虛擬機(JVM Java Virtual Machine)和Java程序所需的核心類庫等议经,如果想要運行一個開發(fā)好的Java程序,計算機中只需要安裝JRE即可谴返。
? ? ? ? JDK(Java Development Kit? Java開發(fā)工具包):
? ? ? ? JDK是提供給Java開發(fā)人員使用的煞肾,其中包含了java的開發(fā)工具,也包括了JRE嗓袱。所以安裝了JDK籍救,就不用再單獨安裝JRE了。
? ? ? ? 其中的開發(fā)工具:編譯工具(javac.exe)渠抹、打包工具(jar.exe)等蝙昙。
? ? ? ? 簡單而言,使用JDK開發(fā)完成的java程序逼肯,交給JRE去運行耸黑。
JDK包含JRE,JRE包含虛擬機篮幢,這就是它們?nèi)齻€之間的關系大刊。圖中藍色部分為Java開發(fā)用到的工具。
????????下載JDK
? ? ? ? 官方網(wǎng)址:
? ? ? ? www.oracle.com
? ? ? ? java.sun.com
? ? ? ? 我們進入第一個網(wǎng)站。
? ? ? ? 點Java SE可以缺菌,點Java SE6 Update 22也可以葫辐。
? ? ? ? 我們點擊Java SE。
? ? ? ? 繼續(xù)點擊Download JDK伴郁。
? ? ? ? 6u21耿战。其中6指版本,u指update焊傅,21指更細節(jié)版本剂陡。
? ? ? ? 繼續(xù)點擊Download,進入下載頁面狐胎。
? ? ? ? 在Platform(平臺)這一項選擇:Windows鸭栖。
? ? ? ? 點擊:Continue。
? ? ? ? 點擊這個文件下載即可握巢。
? ? ? ? 視頻錄制比較早晕鹊,網(wǎng)頁是當時的,現(xiàn)在登入網(wǎng)頁和視頻中不一樣了暴浦,我自己操作如下溅话,下載了Java SE 11:
? ? ? ? 但是發(fā)現(xiàn)這個版本和我用的系統(tǒng)不兼容。
? ? ? ? 這個版本是64位歌焦,我的版本是32位飞几,重新下!
????
????????安裝JDK
? ? ? ? 安裝過程直接點下一步就好同规,不建議安裝在C盤循狰,我安裝在了D盤窟社。
? ? ? ? 后面又會跳出一個窗口要安裝jre券勺。
? ? ? ? 但是在安裝jdk的過程中已經(jīng)安裝了jre。
? ? ? ? 再說回安裝jdk的問題灿里,其實可以直接復制這個目錄关炼,粘貼到自己用的那臺電腦磁盤里就OK,因為它本來就是綠色的匣吊。但是如果是自己安裝下來的儒拂,它會寫進注冊表里,官網(wǎng)上有更新的時候聯(lián)網(wǎng)會自動更新色鸳。如果沒有安裝直接復制了目錄社痛,就不會自動更新,但并不影響它的使用命雀。
? ? ? ? 配置環(huán)境變量
? ? ? ? 驗證是否成功
? ??04-Java環(huán)境搭建(環(huán)境變量配置)
? ? ? ? 安裝完畢后蒜哀,jdk文件夾中有很多目錄。
? ? ? ? ?先看bin目錄吏砂,開發(fā)工具都在這個目錄下撵儿,全稱叫binary乘客,二進制的意思。
? ? ? ? 打開之后都是exe文件淀歇,一般我們看到這種文件都會下意識的雙擊執(zhí)行易核,雙擊后發(fā)現(xiàn)一閃而過沒有什么界面,這些文件都不是圖形化界面文件浪默,它要和我們實現(xiàn)人機交互牡直,就要用命令行方式。這些exe文件本身也是由java編寫的纳决,執(zhí)行這些文件就需要虛擬機的支持井氢,jdk中內(nèi)含一個jre環(huán)境,即jre那個目錄岳链。
? ? ? ? 打開dos命令行花竞。
? ? ? ? 進入bin所在目錄,并列出所有文件及文件夾掸哑。
? ? ? ? 運行javac.exe约急,顯示的是這個應用程序所具備的一些參數(shù)信息。javac后面跟著一些參數(shù)信息苗分,以擴展其命令的功能厌蔽。
? ? ? ? 但如果不在javac所在目錄下輸入javac命令,會發(fā)現(xiàn)無法執(zhí)行摔癣。
? ??????如果每次使用javac命令都需要到它所在的目錄下奴饮,未免太麻煩了。
? ? ? ? 這時就需要環(huán)境變量配置择浊,把這個命令所在的目錄告訴系統(tǒng)戴卜,由windows幫我們?nèi)フ椅覀円獔?zhí)行的命令。所謂環(huán)境琢岩,是系統(tǒng)的環(huán)境投剥,在系統(tǒng)中提供一個變量,我們只要把javac命令所在的目錄告訴它就行了担孔。
? ? ? ? 右鍵我的電腦/計算機---->屬性---->高級系統(tǒng)設置---->高級---->環(huán)境變量---->系統(tǒng)變量江锨,找到Path變量,雙擊打開糕篇,復制javac所在目錄啄育,粘貼在變量值的最前面,再加一個分號和后面的值分隔開拌消。環(huán)境變量配置完畢挑豌。再新開一個dos命令行,發(fā)現(xiàn)在任意目錄下都可以執(zhí)行javac啦。
? ? ? ? 總結(jié)一下浮毯,java環(huán)境的搭建包括四步:1.下載完疫,2.安裝,3.配置環(huán)境變量(目的:為了更方便的應用java開發(fā)工具)债蓝,4.新開一個dos命令行驗證是否配置成功壳鹤。
????05-Java環(huán)境搭建(環(huán)境變量配置技巧)????? ? ? ? ??
? ? ? ? 將目錄粘貼在變量值最前面和最后面的問題,意味著系統(tǒng)先找這個目錄還是最后再找這個目錄饰迹。
? ? ? ? 一個技巧:當javac所在的目錄發(fā)生變化時芳誓,一般來說,目錄容易發(fā)生變化的部分是jdk這個文件夾被移動到其他目錄中啊鸭,所以這部分在我這里為:D:\JAVA\jdk1.8.0_181锹淌,注意沒有bin,因為jdk文件夾中的目錄都是確定的赠制。目錄發(fā)生變化后赂摆,每次還要在Path變量中找到javac的目錄那一部分進行修改,有點麻煩钟些。這個時候只需要新建一個系統(tǒng)變量烟号,這里取名為JAVA_HOME,變量值為目錄中容易變化的部分政恍,再將Path變量中javac所在目錄中這一部分替換為%JAVA_HOME%炒瘸,以后目錄發(fā)生變化時定踱,只需要修改JAVA_HOME變量的值即可议忽,會方便一些引润。
????06-Java環(huán)境搭建(環(huán)境變量臨時配置方式)????
? ? ? ? 剛剛所述的配置方式是一勞永逸的配置方式,你只要配置一次宗弯,以后都不用配置了脯燃,比較簡單。
? ? ? ? 但有的時候只需要臨時配置一下罕伯,比如說拿著硬盤去別人機子上調(diào)試曲伊,人家當然不希望你修改他們電腦的配置啦。
? ? ? ? 怎么臨時配置環(huán)境變量呢追他,只需要用一個dos命令,這個dos命令就是set岛蚤,set可以查看或者設置環(huán)境變量的值邑狸。
? ? ? ? 輸入:set,列出了一些本機上已經(jīng)配置好的環(huán)境變量涤妒。? ? ? ??
? ? ? ? 如果只需要查看其中一個環(huán)境變量单雾,只需要在set后面跟上這個環(huán)境變量名,如:set Path。(發(fā)現(xiàn)師兄師姐之前配置了好多環(huán)境變量)
? ? ? ? 如果想要改變Path環(huán)境變量的值硅堆,輸入:set Path=haha屿储,即可改變。再重新打開一個dos命令行(輸入:start)渐逃,會發(fā)現(xiàn)還是以前的配置够掠,并沒有改變,所以dos命令行的配置方式只在當前窗口有效茄菊。
? ? ? ? 現(xiàn)在將Path配置為javac所在目錄疯潭,但是Path中就只有這一個值了。? ? ? ??
? ? ? ? 所以需要這樣配置面殖,輸入:set Path=haha竖哩;%Path%,后面動態(tài)獲取到Path的原有值脊僚,會把新的值添加在原有值的最前面相叁。
????07-Hello World
? ? ? ? 環(huán)境配置好了,要開始寫代碼啦辽幌!
? ? ? ? 我們需要一個文字編輯器钝荡,可以是最基本的記事本,也可以是高級的Eclipse舶衬,用Eclipse寫代碼的效率是非常高的埠通,可以免去很多不必要的麻煩,但不建議初學者使用逛犹,因為它都會自動生成端辱,就沒有編程手感啦。初學者還是先按部就班的一行一行來寫~
? ? ? ? 下面編輯一個記事本~
? ? ? ? 打開dos命令行虽画。我們現(xiàn)在要把剛剛編寫的java文件(稱為源文件)舞蔽,編譯為計算機(更具體的說,虛擬機)能識別的文件(執(zhí)行文件)码撰。
? ? ? ? 輸入:javac 文件名渗柿,編譯指定java文件。
????????編譯后產(chǎn)生了一個Demo.class文件脖岛,這個文件是JAVA運行文件朵栖,但是很遺憾,它不能雙擊執(zhí)行柴梆,也稱為中間碼文件或字節(jié)碼文件陨溅。但是只要電腦上有虛擬機,這個文件就可以運行绍在。
? ? ? ? 運行java文件要調(diào)用虛擬機门扇。java命令啟用后雹有,會自動去找jre中的虛擬機。這里運行出了一些問題臼寄,因為我們編寫的時候沒有寫主函數(shù)霸奕,不具備獨立運行的能力。
? ? ? ? 修改一下java文件:
? ? ? ? 再次編譯運行就沒有問題啦吉拳。
? ? ? ? 但是并沒有顯示什么結(jié)果质帅,現(xiàn)在我們想要計算機和我們做一個互動,繼續(xù)修改java文件~
? ? ? ? 兩個常見問題:? ? ? ??
? ? ? ? 這兩個問題都是可能因為:1.目錄錯了合武,2.文件名錯了临梗。
? ? ? ? 我們這個例子中,java文件名123.java和類名Demo不一致稼跳,我們也可以保存java文件為Demo.java盟庞,這樣比較方便記憶。Demo類定義的時候為class Demo汤善,如果給前面添上public什猖,變成public class Demo,java文件名就必須和類名一致红淡!具體到后面會講~
? ? ? ? Hello World:代表學習計算機語言的第一個入門小程序〔皇ǎ現(xiàn)在泛指接觸新事物的第一步。
? ? ? ? class:是java中的關鍵字在旱,用于定義類摇零,java語言的程序代碼都需要定義在類中。
? ? ? ? 關鍵字:被java語言賦予了特殊含義的單詞桶蝎。
? ? ? ? Demo:為了方便使用這個類驻仅,給類自定義的類名。
????08-classpath配置
? ? ? ? 剛才有個問題登渣,換了一個目錄之后就無法執(zhí)行java程序噪服,如果我們想在任意目錄下都可以執(zhí)行,該怎么做呢胜茧?這個時候需要把Demo.class文件所在目錄告訴系統(tǒng)粘优,和環(huán)境變量配置的思想是一樣的。
? ? ? ? 接下來講兩種配置方式呻顽。
? ? ? ? 臨時配置方式
? ? ? ? 定義一個新的環(huán)境變量專門提供給類文件使用雹顺,將Demo所在目錄賦值給它,就發(fā)現(xiàn)在其他目錄下也可以執(zhí)行啦芬位。
? ? ? ? 但這樣會存在一個問題无拗,如果不同目錄有相同名稱的類呢?它的執(zhí)行順序是這樣的:
? ? ? ? 如果classpath有定義昧碉,且定義為:set classpath=目錄
? ? ? ? 則只在classpath中找英染,找不到也不會在當前目錄中找。
? ? ? ? 如果classpath有定義被饿,且定義為:set classpath=目錄四康;
? ? ? ? 則先在classpath中找,找不到再在當前目錄中找狭握。
? ? ? ? 若classpath定義為:set classpath=目錄1闪金;目錄2
? ? ? ? 則先在目錄1找,再在目錄2找论颅。
????????若classpath定義為:set classpath=.哎垦;目錄1;目錄2
????????則先在當前目錄找(一個點代表當前目錄)恃疯,再在目錄1找漏设,最后在目錄2找。
? ? ? ? 如果classpath沒有定義今妄,則在當前目錄找郑口。
? ? ? ? 而之前講的環(huán)境變量path,定義后盾鳞,是先在當前目錄找犬性,沒找到,再去path中找腾仅。
? ? ? ? 一般來說乒裆,classpath定義后面都不會加;推励,因為配置classpath的初衷就是運行這個目錄中的文件鹤耍,如果還在當前目錄中找,即使找到也不是我們想要運行的那一個吹艇,只是名字一樣惰蜜。
????????PS:對環(huán)境變量進行清空,輸入:set 環(huán)境變量名=
? ? ? ? 永久配置方式
? ? ? ? 同之前講的path的配置方式受神。
? ? ? ? 不過我們目前還不用配置classpath抛猖,等到后期講到包的時候再配置~
? ? ? ? path與classpath的區(qū)別:如果是普通的可執(zhí)行文件,配置用path鼻听;如果是java執(zhí)行文件,配置用classpath财著。
????09-Hello World的組成部分
? ? ? ? class:java中的一個關鍵字,專門用于定義類撑碴。
? ? ? ? Demo:類名撑教。建議起一些有意義的名字。單詞首字母大寫醉拓,如XxxYyyZzz伟姐。
? ? ? ? 主函數(shù)寫法是固定的:public static void main(String[] args)收苏。虛擬機其實就在調(diào)用指定類中的主函數(shù),它在執(zhí)行這個主函數(shù)中的每一句代碼愤兵。
? ? ? ? 一個java文件中可以有多個類鹿霸,有多少個類,編譯之后會產(chǎn)生多少個class文件秆乳。類中是否要寫主函數(shù)并不是必須的懦鼠,你需要運行這個類才需要寫主函數(shù),不需要運行的話就不用寫~按需求而定~可以每個類都有主函數(shù)屹堰,那每個類都可以運行肛冶,在運行的時候,輸入:java *.class扯键,*為指定的需要運行的類名睦袖,想運行哪個運行哪個~但同一個類不可以有多個主函數(shù)。
????10-注釋
? ? ? ? java編譯器是不會解析注釋的~
? ? ? ? 注釋的作用
? ? ? ? 注解忧陪、說明扣泊、解釋我們寫的程序。
? ? ? ? 用于調(diào)試程序嘶摊。
? ? ? ? 注釋的分類
? ? ? ? 單行注釋://
? ? ? ? 多行注釋:/* */
? ? ? ? 文檔注釋:/**? */? ? ? 可以通過javadoc.exe將程序中的文檔注釋都提取出來形成一個網(wǎng)頁延蟹,這個網(wǎng)頁就是程序的說明書。
? ? ? ? 單行注釋中可以有單行注釋叶堆,但多行注釋中不可以嵌套多行注釋阱飘,文檔注釋同理。
? ? ? ? 要養(yǎng)成一邊寫注釋虱颗,一邊寫代碼的習慣沥匈。
? ? ? ? 一般情況下,類前面加的都是文檔注釋忘渔,函數(shù)前面加的都是文檔注釋高帖,代碼當中的某幾句比較難理解,一般會加上單行注釋畦粮,但是不能每一行都加散址,會有大量的中英文混合,閱讀性會很差宣赔。
? ? ? ? 寫代碼要先寫注釋预麸。
? ? ? ? PS:JAVA嚴格區(qū)分大小寫。