java需要先安装jdk_谢谢知乎。Java初学者首先下载 JDK 开发环境,然后再下 eclipse 对吗?那 tomcat是什么?还需要安装吗?...
程序獵人Till All are One!
何馬、FAN 等人贊同
這個問題,作為有些Java經(jīng)驗的人,都會覺得太初級。而且,我認(rèn)為可能很多真正的高手不屑于跑來回答這種問題。
本來我也不打算回答的,但最近剛好憑興趣在學(xué)Node.JS,順便學(xué)習(xí)加強(qiáng)一下Vim。發(fā)現(xiàn)什么Coffee Script、什么Jade、什么Express之類的還真是讓人一頭霧水。深刻地認(rèn)識到很多基礎(chǔ)的東西,如果沒有個人來串一下,對于初學(xué)者來說還真是麻煩。
所以,我覺得還是來回答一下比較好。(是不是太羅嗦了?)
===== 正文分割線 =====
JDK是Java Development Kit,也就是說Java開發(fā)所需的工具包。有了這個東西,一切Java開發(fā)理論上都不是問題了。當(dāng)然,根據(jù)你下載的版本不同,可能擅長的領(lǐng)域不同。通常大家都是用JDK來開發(fā)JavaSE應(yīng)用的。
具體做法上,JDK里包含了用來編譯源代碼的javac命令,和用來執(zhí)行字節(jié)碼的java命令。
只要設(shè)好了所用操作系統(tǒng)的PATH和CLASSPATH兩個環(huán)境變量,對你所寫的文本格式的Java源代碼進(jìn)行操作,原則上就不會出現(xiàn)代碼編寫問題以外的錯誤。
但因為javac和java命令都是命令行命令,執(zhí)行以及結(jié)果查看都有些麻煩。更麻煩的是代碼的動態(tài)調(diào)試(也就是一邊跑一邊看每一步都做了什么)。
Eclipse是集成開發(fā)環(huán)境,就是解決上面說的命令執(zhí)行和操作麻煩的問題的。使用這個工具,如果你不做什么特別的特殊的事情的話,你可以不用操心javac和java命令怎么用,參數(shù)是什么,各種環(huán)境變量如何配置等。
只需要按照教程學(xué)會工具的使用,就可以很容易地書寫你的代碼,然后進(jìn)行編譯、執(zhí)行以及調(diào)試。
而且,代碼書寫時會有很多提示,不用去記各個Class那些龐雜的方法名等。
也正是因為方便,它會在一定程度上影響你對Java相關(guān)命令的學(xué)習(xí)以及對常用Class的掌握。畢竟重復(fù)是加強(qiáng)記憶的最佳途徑。什么都提示了,都自動了,就很難記住了。
這就是為什么有人反對你一開始使用這工具。
至于tomcat,它是使用Java進(jìn)行Web開發(fā)的應(yīng)用服務(wù)器(Application Server)軟件。
之所以它會跟Java有緊密的聯(lián)系是因為Java在經(jīng)歷了誕生后的進(jìn)化之后,漸漸地被大眾接受為優(yōu)良的Web服務(wù)器端編程語言,也就是說Java最能發(fā)揮其優(yōu)勢的地方是用來進(jìn)行Web開發(fā)。
從你的問題描述,我冒昧地認(rèn)為你可能不是太了解什么是Web開發(fā)。所以簡單做一下解釋。
Web開發(fā),說白了就是網(wǎng)站構(gòu)建的軟件部分。我們每天上網(wǎng),看到各種網(wǎng)頁,這些網(wǎng)頁大多數(shù)都是由服務(wù)器端的程序根據(jù)用戶提出的請求生成出來。這些程序就是服務(wù)器端運行的程序。
而服務(wù)器與瀏覽器的溝通是通過特定的格式進(jìn)行的,這個格式被稱作HTTP協(xié)議,HTTP協(xié)議有很多內(nèi)容需要處理,如果所有這些都由開發(fā)者來做,未免負(fù)擔(dān)過重。所以,很多年以前就有人開發(fā)出了專門的應(yīng)用程序服務(wù)器軟件,專門負(fù)責(zé)處理HTTP協(xié)議中的細(xì)節(jié)部分,而把真正需要的處理發(fā)送給專門的程序,也就是Web開發(fā)的程序。
以Java為例——
所有的Java程序啟動入口都是public static void main(String[] args)函數(shù)。tomcat里面就有這么一個函數(shù),運行這個函數(shù)后,tomcat里面會進(jìn)行各種處理——打開網(wǎng)絡(luò)端口進(jìn)行監(jiān)聽、加載HTTP解析模塊……我們稱作服務(wù)器啟動了。(實際是跟Apache協(xié)作進(jìn)行的,這里就不詳述了。)
當(dāng)從網(wǎng)絡(luò)上有請求到達(dá)我們的tomcat服務(wù)器時,它會根據(jù)請求的地址來調(diào)用你寫的java程序模塊。
比如,讓我們先假設(shè)知乎的后臺是Java實現(xiàn)的。
當(dāng)你敲入
http://www.zhihu.com/
的時候,tomcat會得到一個希望訪問/(根目錄資源)的請求。
然后它去配置文件里查根目錄對應(yīng)的模塊是什么。
假設(shè)查到的模塊是root這個類
那么它會去調(diào)用root.doGet()方法。
而你寫一個Servlet的時候,必須實現(xiàn)doGet()方法,此時你的方法被調(diào)用,那么你寫的代碼就運行了。
大概就是這么個狀況。
至于學(xué)習(xí)方法。因人而異。
如果你希望直接學(xué)習(xí)如何用Java來開發(fā)Web應(yīng)用。建議在學(xué)習(xí)Java語言之前先簡單學(xué)習(xí)一下網(wǎng)絡(luò)基礎(chǔ)知識。
至少理解以下幾個基礎(chǔ)概念(到維基百科上查查,讀懂即可):
服務(wù)器
客戶端
協(xié)議
端口
URL
TCP/IP
網(wǎng)絡(luò)分層結(jié)構(gòu)(了解概念即可,暫時不需要記住各層是咋回事兒)
瀏覽器
HTTP(需要理解GET/POST的意義、差別)
HTML
Session(會話)
然后再開始Java進(jìn)行Web開發(fā)的學(xué)習(xí)。
最后,祝你學(xué)習(xí)愉快。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的java需要先安装jdk_谢谢知乎。Java初学者首先下载 JDK 开发环境,然后再下 eclipse 对吗?那 tomcat是什么?还需要安装吗?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 合金多少钱一克啊?
- 下一篇: 做修复双眼皮多少钱啊?