兩個小時擺脫Java小白--javadoc與跨平臺原理

一、javadoc命令將註釋生成一個文檔

代碼寫的好很差,最重要的一個指標就是,能讓別人看的懂你的代碼,讓別人看的懂呢,光靠良好的命名是不夠的,你們必定要養成良好的編程習慣,每一次我入職的時候,我都瞧不上上一任寫的代碼,都會暗暗的鄙視,這代碼寫的是shua,其實呢本身寫的代碼,過兩個月以後,若是不寫註釋,你回過頭看的時候你也會鄙視 本身,這寫的shua,寫的是狗屎嗎,狗屎都比這個好看,因此說註釋也是很重要的,註釋分爲三種 單行、多行和文檔,在HelloWorld中咱們講過了,那麼咱們怎麼生成文檔並查看呢! 下面咱們就用javadoc來生成一下文檔!html

首先呢打開咱們的神祕的命令行窗口,切換到咱們HelloWorld代碼目錄,而後執行javadoc HelloWorld.java命令生成Html文檔

在這裏插入圖片描述
唉這是啥狀況啊,怎麼出現了那麼都得錯誤編碼 GBK得不可映射字符, 這個錯誤呢,通常是由於代碼中含有中文字符,註釋中的中文字符也算。因爲使用命令行窗口運行java程序的時候,JVM默認的編碼格式是gbk。而包含中文字符的代碼通常是UNICODE格式,因此直接運行含有中文字符的代碼就很容易出現編碼錯誤。 解決辦法:在系統的環境變量中,新加一個值:
在這裏插入圖片描述
下面咱們再試一下javadoc的命令
在這裏插入圖片描述
如今不出現那個錯誤了,看樣子生成了許多html,這些html就是咱們要的文檔 雖然上邊的錯誤解決了,可是新的bug又出現了控制檯亂碼了,無情啊,難道這就是傳說中的改完5個bug,新增15個bug嗎!我去!聽軒軒的一句話,千萬bug不可怕,耐心細緻征服它!歐耶!既然學java,那就作好這種準備,既然控制檯亂碼了,那就把控制檯的編碼格式也改一下!
在這裏插入圖片描述
猜的不錯,他就是GBK模式的,怎麼改呢, 修改涉及註冊表,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor,新建「字符串值」,名稱「autorun」,數值「chcp 65001」
在這裏插入圖片描述
在這裏插入圖片描述
而後咱們再試試javadoc命令
在這裏插入圖片描述
看此次就正常多了是吧...這就會有人問了生成了那麼Html,咱們該看哪個呢! 咱們只須要點開index就好了,來我們打開看一看了!
在這裏插入圖片描述
在這裏插入圖片描述
看這個文檔就把你的代碼解釋的明明白白了,全部方法,靜態方法有哪些什麼的,細心的童鞋會發現我生成的命令是用的*.java 是通配符的意思,意思表明全部,是把這個目錄裏邊的全部代碼生成文檔,舉個例子咱們在個人電腦裏搜索文件的時候搜索.png 電腦就會把當前目錄的全部後綴爲png的文件搜出來! 咱們瞭解了javadoc這個命令,下面咱們就瞭解一哈!java的跨平臺!

二、java的跨平臺原理

爲何咱們的java可以那麼牛逼,就是由於它能跨平臺! java具備一個特色:一次編譯,處處運行! 什麼是平臺呢,就是咱們所說的操做系統:好比liux系統,mac系統,windows系統!java

在這裏插入圖片描述
咱們所說的跨平臺,是指字節碼文件能夠跨平臺,注意字節碼不是機器代碼,爲何字節碼能夠跨平臺呢,是由於不一樣的Jdk,Jre,運行環境能夠解釋相同的字節碼,就是不一樣的JRE能夠把字節碼翻譯成不一樣的機器語言,咱們下載的Jdk的時候是否是選擇相對應的平臺的jdk,
在這裏插入圖片描述
一份.class能夠經過不一樣的JRE能夠運行在不一樣的平臺上,這就叫作跨平臺!其實跨平臺也沒有那麼高深! JRE就至關於翻譯官,好比你帶着英文的翻譯官你就能夠去美國旅遊,你帶着蒼老師,你就能夠去日本!翻譯官不一樣 ,你是同一我的,你至關於.java 你寫了一個稿.class 而後蒼老師他們就至關於不一樣的JRE!別看跨平臺特別容易,當初java就是靠跨平臺,狠狠地火了一把! 來一個詳細點的圖:
在這裏插入圖片描述
左邊那是編譯環境,右邊是運行環境,經過 類加載器這個東西,將.class裝載到內存中,進行驗證,須要一些java類庫的支持,爲何驗證呢,** 極可能你編譯沒問題,可是運行的時候也有可能出錯,也就是之後經常遇到的Exception,讓你天天掉頭髮的東西,編譯沒問題只能說你寫的代碼語法沒有問題!** java解釋器和即時編譯器,是爲了加快運行效率,一開始的時候java是解釋運行,就是解釋一句運行一句,這樣的話就比較慢了,有了即時編譯器呢,就把一些東西提早編譯好,這樣的話效率會提升不少! 這些東西呢都是在虛擬機裏進行的。 如今呢,可能你們因爲知識量的緣由,理解的不太到位,咱們後邊會回來回顧的,到時候就會品出來個因此然!兄嘚,你品,你仔細的品! 加入咱們的小圈子一塊兒學習:679293162!!
相關文章
相關標籤/搜索