程序是如何被執(zhí)行的
程序是如何被執(zhí)行的?許多開發(fā)者可能也沒法回答這個問題,大多數(shù)人更注重的是如何編寫程序,卻不會太注意編寫好的程序是如何被運行,這并不是一個好的學習習慣。作為一名開發(fā)者,不僅要能夠學會開發(fā),對程序的運行也需要了解,因為它在面試或者排查問題時都可能會使用到,下面就來初步了解下,我們編寫好的程序執(zhí)行在執(zhí)行時需要經歷哪一些流程吧。
JAVA程序開發(fā)和執(zhí)行的流程:
1、電腦編寫源文件(java后綴的文件)
2、JAVA編譯器將源文件編譯成字節(jié)碼文件(class后綴的文件)
3、字節(jié)碼文件被加載到JAVA虛擬機中(JAVA虛擬機在加載類的過程又會經歷:加載、校驗、準備、解析、初始化的步驟)
4、 JAVA解析器會對加載到JAVA虛擬機的字節(jié)碼文件進行解釋執(zhí)行
5、輸出執(zhí)行結果
開發(fā)工具
簡單了解程序執(zhí)行的完整流程后,下面開始介紹開發(fā)工具了。許多教程或者書籍都推薦剛開始編程時使用記事本的方式開發(fā)更好,但是個人對這個看法并不是很贊同。
初學者剛開始寫程序時很容易出現(xiàn)錯誤,即使照著書本上敲打也會如此,如果使用記事本的方式編程,每次出現(xiàn)錯誤都需要重走一篇修改、編譯、執(zhí)行的流程,這樣在命令行上操作極不方便,且步驟相對繁瑣,容易打擊初學者學習的積極性,因此,個人建議,如果是初學者,可以直接使用開發(fā)工具,減少一些不必須的步驟。
對于開發(fā)工具,初學者剛開始不需要對各種快捷鍵和插件很熟悉,只需要知道如何創(chuàng)建程序文件和運行編寫的程序即可,這樣可以減少不必要的操作,提高開發(fā)的效率。
一、IDEA
全稱Intellij IDEA,是JAVA語言開發(fā)的集成環(huán)境,本身也自帶JDK環(huán)境(但是不太推薦使用自帶的),在業(yè)界被公認為最好的JAVA開發(fā)工具之一,支持各種插件拓展功能,最突出的特點就是很符合開發(fā)者的思維,對程序的調試和檢測都很人性化,可以減少很多人為操作,提高效率。缺點就是:需要收費,但是這個對神通廣大的網友來說并不是一件難事,但是還是建議,如果有能力,還是支持正版。
二、Eclipse
它是一款開發(fā)源代碼,基于JAVA的可拓展開發(fā)平臺,自身也帶了JAVA的開發(fā)工具(JDK),在IDEA未流行之前也曾輝煌一時(現(xiàn)在其實也有很多忠實粉絲),最重要的是它是免費、綠色軟件(下載后不需要安裝即可運行)。
兩者對比:博主兩款工具都使用過,大學時主要使用的是Eclipse,但是出來工具后,周圍的同事都是使用IDEA,所以后面也轉換成了IDEA,使用體驗來說,IDEA更加智能,更多插件,使用起來也更加舒服,因此博主建議初學JAVA的可以考慮使用IDEA作為開發(fā)工具。
下載地址:
https://www.eclipse.org/downloads/
使用教程:因為Eclipse是免費、綠色軟件,因此下載后即可直接使用,無需安裝。
小結
本篇文章主要是介紹了JAVA程序執(zhí)行的流程以及常使用的開發(fā)工具,好記性不如爛筆頭,感覺跟著教程將開發(fā)工具搭建起來吧。
下一篇主要介紹程序規(guī)范,敬請期待!
如果文章有幫助,請給作者關注、點贊、收藏、評論,讓博主有動力創(chuàng)作更加優(yōu)質的文章。
作者簡介:CSDN、知乎、頭條平臺優(yōu)質博主,全網粉絲2w+。專注于收集全網優(yōu)質學習資源、面試干貨免費分享,同時也涉及JAVA、算法、數(shù)據(jù)結構、網絡協(xié)議等各方面編程知識講解。