學java最重要的是下面四個內(nèi)容:1、掌握Java語言的使用:語言語法、程序邏輯,OOP(面向對象)思想,封裝、繼承、多態(tài),集合框架、泛型、File I\O技術,多線程技術、socket網(wǎng)絡編程,XML技術。編程有關的操作系統(tǒng)基本使用,HTML5規(guī)范、HTML5文檔結構、HTML5元素、Web語義化;CSS3規(guī)范、CSS3選擇器、層疊與繼承、盒模型與視覺格式化模型、現(xiàn)代CSS布局、CSS3基本屬性千鋒教育就有線上免費Java線上公開課。2、掌握Java Web開發(fā)技術:Java開發(fā)中使用到的Web前端技術,HTML5+CSS3,JavaScript操作BOM和DOM,JQuery的選擇器、事件處理、動畫效果,MySQL數(shù)據(jù)庫技術,JDBC技術、JSP、Servlet、EL和JSTL、過濾器和監(jiān)聽器、AJax異步請求等,Linux技術、SVN、Linux環(huán)境下項目發(fā)布部署等。 3、掌握使用流行框架SSM\SSH技術實現(xiàn)企業(yè)級項目開發(fā):重點學習MyBatis、Spring、Spring MVC框架的應用,Git、Java設計模式等,重點學習Struts2 、Spring、Hibernate框架的應用,Maven、Oracle數(shù)據(jù)庫應用技術,了解大數(shù)據(jù)生態(tài)體系,Hadoop基礎入門。4、JavaWeb框架:Spring體系結構、Spring IOC、AOP、FactoryBean與BeanFactory、聲明性事務處理、Spring 5新特性。Maven與Gradle的使用。Spring Boot自動配置、Spring Boot CLI與Initializr、Spring Boot Starter、Actuator。SpringMVC工作原理和工作流程;攔截器、數(shù)據(jù)綁定轉換和格式化、全局異常處理、轉發(fā)與重定向、AJAX請求處理。如果想了解更多相關知識,建議到千鋒教育了解一下。千鋒教育總部位于北京,已在18個城市成立分公司,現(xiàn)有教研講師團隊300余人,每年培養(yǎng)泛IT人才近2萬人,十年間累計培養(yǎng)超10余萬泛IT人才 。
成都創(chuàng)新互聯(lián)長期為上千余家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為浦東企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站設計,浦東網(wǎng)站改版等技術服務。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
一 eclipse / myeclipse
當年學習java,最先接觸到的就是 eclipse。喔了個噻,當時感覺eclipse好牛啊,有好多先進的功能:
1. 可以方便地進行包管理。可視化窗口,創(chuàng)建目錄和文件都很方便,移動包,復制包等都可以方便的進行。
2.熱鍵操作。復制保存啥的就不說了,代碼提示這個功能還是很不錯的,在寫著寫著,腦子突然短路的時候,可以通過快捷鍵把腦子快速帶回來。
3.代碼調(diào)試。有時候,寫著寫著代碼,突然間就報錯了,不知道哪里錯了,咋整,這時候,如果使用編輯器的話,就可以使用 debug模式進行調(diào)試了,找出問題所在,解決問題。
4.一些代碼管理等插件。在企業(yè)中肯定要用到代碼同步工具,svn 或者 git , 在編輯器中會提供這樣的插件,方便代碼的管理。
二 idea
相比 eclipse 和 myeclipse ,idea 的基本功能差不多。
1. 包管理:也是有方便的包和資源管理。
2.熱鍵:也是提供熱鍵管理的,而且還很好用。
3.代碼調(diào)試:debug模式用起來也是很舒服。
4.插件方面:也是支持一些插件的,如 熱部署插件等。
三 比較
1. 操作:兩個軟件有不同的快捷鍵,雖然idea兼容部分eclipse快捷鍵,但是不建議這樣做。
2.資源消耗:idea更能吃內(nèi)存啊呦喂,電腦配置低的傷不起啊。eclipse要更柔和一點。
3.是否免費:eclipse 是免費的,myeclipse和idea 是要付費的呦。但是嘛,你懂得。
4.專業(yè)性:idea 應該是更專業(yè)的,有更高的代碼更新機制和代碼提示功能。但是 eclipse 涉及的范圍更廣,除了java 和可以編輯其他語言的項目。
四 建議
1. 如果電腦配置比較低,建議使用 eclipse ,并且使用較低版本的,這樣,電腦不會太吃力。如果配置比較高,比如,16G內(nèi)存,固態(tài)硬盤,那就使用idea吧。
2. 沒有最好的編輯器,只有最適合自己的編輯器。任何一個編輯器用習慣了,都是很不錯的。
希望對您有所幫助!~
Java的優(yōu)點如下:Java簡單,易于設計,易于編寫,因此比其他任何Java都易于編譯,調(diào)試和學習。Java是面向對象的,用于構建模塊化程序和其他應用程序中的可重用代碼。Java與平臺無關,可移植復制。
Java是一種非常通用的語言,因此可以在許多不同的環(huán)境中使用。還可以在許多不同的平臺上運行,因此可以在Linux機器,Unix,Mac,Windows或手機上運行它。因此,它幾乎可以與任何東西一起使用。
Java是一種通用的編程語言,非常類似于Python或JavaScript。
該語言本身特別是一種面向對象的編程語言,因此與C ++,C#具有相似之處。
Java也是一個平臺,這意味著Java代碼可以在具有Java虛擬機(JVM)的任何計算機上運行。最初這兩個東西是可以互換的,并且在JVM上運行的唯一東西是Java。但是從那時起,已經(jīng)編寫了許多可以在Java平臺上運行的語言,如Scala,Groovy,稱為jRuby的Ruby,稱為Jython的Python等語言。
Java是一種全球熱門語言,有很多原因:
Java已經(jīng)存在了很長時間,因此它的確很完善。有很多很棒的書,在線資源。
世界上可能有比其他任何類型的程序員都要多的Java程序員,因此很多人已經(jīng)了解Java,因此很容易找到可以幫助和指導的人。
Java從C語言派生其語法,許多其他語言也從C派生其語法,因此,如果您學習Java,則學習Javascript,C?;駽 ++之類的語言要容易得多。
它是一種面向對象的語言,因此您在Java中學習的許多基礎概念都可以轉移到其他語言。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態(tài)面向對象編程語言的代表,極好地實現(xiàn)了面向對象理論,允許程序員以優(yōu)雅的思維方式進行復雜的編程[1]。
Java具有簡單性、面向對象、分布式、健壯性、安全性、平臺獨立與可移植性、多線程、動態(tài)性等特點[2]。Java可以編寫桌面應用程序、Web應用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應用程序等[3]。
外文名
Java
現(xiàn)公司
Oracle
推出時間
1995年5月
快速
導航
編程開發(fā)
語言特點
工作原理
語言基礎
語言標準
語言規(guī)范
技術應用
學習指南
語言評價
發(fā)展歷程
20世紀90年代,硬件領域出現(xiàn)了單片式計算機系統(tǒng),這種價格低廉的系統(tǒng)一出現(xiàn)就立即引起了自動控制領域人員的注意,因為使用它可以大幅度提升消費類電子產(chǎn)品(如電視機頂盒、面包烤箱、移動電話等)的智能化程度。Sun公司為了搶占市場先機,在1991年成立了一個稱為Green的項目小組,帕特里克、詹姆斯·高斯林、麥克·舍林丹和其他幾個工程師一起組成的工作小組在加利福尼亞州門洛帕克市沙丘路的一個小工作室里面研究開發(fā)新技術,專攻計算機在家電產(chǎn)品上的嵌入式應用。
JAVA
由于C++所具有的優(yōu)勢,該項目組的研究人員首先考慮采用C++來編寫程序。但對于硬件資源極其匱乏的單片式系統(tǒng)來說,C++程序過于復雜和龐大。另外由于消費電子產(chǎn)品所采用的嵌入式處理器芯片的種類繁雜,如何讓編寫的程序跨平臺運行也是個難題。為了解決困難,他們首先著眼于語言的開發(fā),假設了一種結構簡單、符合嵌入式應用需要的硬件平臺體系結構并為其制定了相應的規(guī)范,其中就定義了這種硬件平臺的二進制機器碼指令系統(tǒng)(即后來成為“字節(jié)碼”的指令系統(tǒng)),以待語言開發(fā)成功后,能有半導體芯片生產(chǎn)商開發(fā)和生產(chǎn)這種硬件平臺。對于新語言的設計,Sun公司研發(fā)人員并沒有開發(fā)一種全新的語言,而是根據(jù)嵌入式軟件的要求,對C++進行了改造,去除了留在C++的一些不太實用及影響安全的成分,并結合嵌入式系統(tǒng)的實時性要求,開發(fā)了一種稱為Oak的面向對象語言。
由于在開發(fā)Oak語言時,尚且不存在運行字節(jié)碼的硬件平臺,所以為了在開發(fā)時可以對這種語言進行實驗研究,他們就在已有的硬件和軟件平臺基礎上,按照自己所指定的規(guī)范,用軟件建設了一個運行平臺,整個系統(tǒng)除了比C++更加簡單之外,沒有什么大的區(qū)別。1992年的夏天,當Oak語言開發(fā)成功后,研究者們向硬件生產(chǎn)商進行演示了Green操作系統(tǒng)、Oak的程序設計語言、類庫和其硬件,以說服他們使用Oak語言生產(chǎn)硬件芯片,但是,硬件生產(chǎn)商并未對此產(chǎn)生極大的熱情。因為他們認為,在所有人對Oak語言還一無所知的情況下,就生產(chǎn)硬件產(chǎn)品的風險實在太大了,所以Oak語言也就因為缺乏硬件的支持而無法進入市場,從而被擱置了下來。
1994年6、7月間,在經(jīng)歷了一場歷時三天的討論之后,團隊決定再一次改變了努力的目標,這次他們決定將該技術應用于萬維網(wǎng)。他們認為隨著Mosaic瀏覽器的到來,因特網(wǎng)正在向同樣的高度互動的遠景演變,而這一遠景正是他們在有線電視網(wǎng)中看到的。作為原型,帕特里克·諾頓寫了一個小型萬維網(wǎng)瀏覽器WebRunner。[4]
1995年,互聯(lián)網(wǎng)的蓬勃發(fā)展給了Oak機會。業(yè)界為了使死板、單調(diào)的靜態(tài)網(wǎng)頁能夠“靈活”起來,急需一種軟件技術來開發(fā)一種程序,這種程序可以通過網(wǎng)絡傳播并且能夠跨平臺運行。于是,世界各大IT企業(yè)為此紛紛投入了大量的人力、物力和財力。這個時候,Sun公司想起了那個被擱置起來很久的Oak,并且重新審視了那個用軟件編寫的試驗平臺,由于它是按照嵌入式系統(tǒng)硬件平臺體系結構進行編寫的,所以非常小,特別適用于網(wǎng)絡上的傳輸系統(tǒng),而Oak也是一種精簡的語言,程序非常小,適合在網(wǎng)絡上傳輸。Sun公司首先推出了可以嵌入網(wǎng)頁并且可以隨同網(wǎng)頁在網(wǎng)絡上傳輸?shù)腁pplet(Applet是一種將小程序嵌入到網(wǎng)頁中進行執(zhí)行的技術),并將Oak更名為Java(在申請注冊商標時,發(fā)現(xiàn)Oak已經(jīng)被人使用了,再想了一系列名字之后,最終,使用了提議者在喝一杯Java咖啡時無意提到的Java詞語)。5月23日,Sun公司在Sun world會議上正式發(fā)布Java和HotJava瀏覽器。IBM、Apple、DEC、Adobe、HP、Oracle、Netscape和微軟等各大公司都紛紛停止了自己的相關開發(fā)項目,競相購買了Java使用許可證,并為自己的產(chǎn)品開發(fā)了相應的Java平臺。[5] [6]
1996年1月,Sun公司發(fā)布了Java的第一個開發(fā)工具包(JDK 1.0),這是Java發(fā)展歷程中的重要里程碑,標志著Java成為一種獨立的開發(fā)工具。9月,約8.3萬個網(wǎng)頁應用了Java技術來制作。10月,Sun公司發(fā)布了Java平臺的第一個即時(JIT)編譯器。
1997年2月,JDK 1.1面世,在隨后的3周時間里,達到了22萬次的下載量。4月2日,Java One會議召開,參會者逾一萬人,創(chuàng)當時全球同類會議規(guī)模之紀錄。9月,Java Developer Connection社區(qū)成員超過10萬。
1998年12月8日,第二代Java平臺的企業(yè)版J2EE發(fā)布。1999年6月,Sun公司發(fā)布了第二代Java平臺(簡稱為Java2)的3個版本:J2ME(Java2 Micro Edition,Java2平臺的微型版),應用于移動、無線及有限資源的環(huán)境;J2SE(Java 2 Standard Edition,Java 2平臺的標準版),應用于桌面環(huán)境;J2EE(Java 2Enterprise Edition,Java 2平臺的企業(yè)版),應用于基于Java的應用服務器。Java 2平臺的發(fā)布,是Java發(fā)展過程中最重要的一個里程碑,標志著Java的應用開始普及。
1999年4月27日,HotSpot虛擬機發(fā)布。HotSpot虛擬機發(fā)布時是作為JDK 1.2的附加程序提供的,后來它成為了JDK 1.3及之后所有版本的Sun JDK的默認虛擬機[7] 。
2000年5月,JDK1.3、JDK1.4和J2SE1.3相繼發(fā)布,幾周后其獲得了Apple公司Mac OS X的工業(yè)標準的支持。2001年9月24日,J2EE1.3發(fā)布。2002年2月26日,J2SE1.4發(fā)布。自此Java的計算能力有了大幅提升,與J2SE1.3相比,其多了近62%的類和接口。在這些新特性當中,還提供了廣泛的XML支持、安全套接字(Socket)支持(通過SSL與TLS協(xié)議)、全新的I/OAPI、正則表達式、日志與斷言。2004年9月30日,J2SE1.5發(fā)布,成為Java語言發(fā)展史上的又一里程碑。為了表示該版本的重要性,J2SE 1.5更名為Java SE 5.0(內(nèi)部版本號1.5.0),代號為“Tiger”,Tiger包含了從1996年發(fā)布1.0版本以來的最重大的更新,其中包括泛型支持、基本類型的自動裝箱、改進的循環(huán)、枚舉類型、格式化I/O及可變參數(shù)。
Java創(chuàng)始人之一:詹姆斯·高斯林
2005年6月,在Java One大會上,Sun公司發(fā)布了Java SE 6。此時,Java的各種版本已經(jīng)更名,已取消其中的數(shù)字2,如J2EE更名為JavaEE,J2SE更名為JavaSE,J2ME更名為JavaME。[8]
2006年11月13日,Java技術的發(fā)明者Sun公司宣布,將Java技術作為免費軟件對外發(fā)布。Sun公司正式發(fā)布的有關Java平臺標準版的第一批源代碼,以及Java迷你版的可執(zhí)行源代碼。從2007年3月起,全世界所有的開發(fā)人員均可對Java源代碼進行修改[9] 。
2009年,甲骨文公司宣布收購Sun[10] 。2010年,Java編程語言的共同創(chuàng)始人之一詹姆斯·高斯林從Oracle公司辭職。2011年,甲骨文公司舉行了全球性的活動,以慶祝Java7的推出,隨后Java7正式發(fā)布。2014年,甲骨文公司發(fā)布了Java8正式版[11] 。
編程開發(fā)
編程環(huán)境
Java概念圖
JDK(Java Development Kit)稱為Java開發(fā)包或Java開發(fā)工具,是一個編寫Java的Applet小程序和應用程序的程序開發(fā)環(huán)境。JDK是整個Java的核心,包括了Java運行環(huán)境(Java Runtime Environment),一些Java工具和Java的核心類庫(Java API)。不論什么Java應用服務器實質都是內(nèi)置了某個版本的JDK。主流的JDK是Sun公司發(fā)布的JDK,除了Sun之外,還有很多公司和組織都開發(fā)了自己的JDK,例如,IBM公司開發(fā)的JDK,BEA公司的Jrocket,還有GNU組織開發(fā)的JDK[13] 。
另外,可以把Java API類庫中的Java SE API子集和Java虛擬機這兩部分統(tǒng)稱為JRE(JAVA Runtime Environment),JRE是支持Java程序運行的標準環(huán)境[14] 。
JRE是個運行環(huán)境,JDK是個開發(fā)環(huán)境。因此寫Java程序的時候需要JDK,而運行Java程序的時候就需要JRE。而JDK里面已經(jīng)包含了JRE,因此只要安裝了JDK,就可以編輯Java程序,也可以正常運行Java程序。但由于JDK包含了許多與運行無關的內(nèi)容,占用的空間較大,因此運行普通的Java程序無須安裝JDK,而只需要安裝JRE即可[15] 。
編程工具
Eclipse:一個開放源代碼的、基于Java的可擴展開發(fā)平臺[16] 。
NetBeans:開放源碼的Java集成開發(fā)環(huán)境,適用于各種客戶機和Web應用。
IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。[17]
MyEclipse:由Genuitec公司開發(fā)的一款商業(yè)化軟件,是應用比較廣泛的Java應用程序集成開發(fā)環(huán)境[18] 。
EditPlus:如果正確配置Java的編譯器“Javac”以及解釋器“Java”后,可直接使用EditPlus編譯執(zhí)行Java程序[19] 。
語言特點
1.簡單性
Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特征去掉了,這些特征是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。Java還剔除了C++的操作符過載(overload)和多繼承特征,并且不使用主文件,免去了預處理程序。因為Java沒有結構,數(shù)組和串都是對象,所以不需要指針。Java能夠自動處理對象的引用和間接引用,實現(xiàn)自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發(fā)上。
2.面向對象
Java是一個面向對象的語言。對程序員來說,這意味著要注意應中的數(shù)據(jù)和操縱數(shù)據(jù)的方法(method),而不是嚴格地用過程來思考。在一個面向對象的系統(tǒng)中,類(class)是數(shù)據(jù)和操作數(shù)據(jù)的方法的集合。數(shù)據(jù)和方法一起描述對象(object)的狀態(tài)和行為。每一對象是其狀態(tài)和行為的封裝。類是按一定體系和層次安排的,使得子類可以從超類繼承行為。在這個類層次體系中有一個根類,它是具有一般行為的類。Java程序是用類來組織的。
Java還包括一個類的擴展集合,分別組成各種程序包(Package),用戶可以在自己的程序中使用。例如,Java提供產(chǎn)生圖形用戶接口部件的類(java.awt包),這里awt是抽象窗口工具集(abstract windowing toolkit)的縮寫,處理輸入輸出的類(java.io包)和支持網(wǎng)絡功能的類(java.net包)。
3.分布性
Java設計成支持在網(wǎng)絡上應用,它是分布式語言。Java既支持各種層次的網(wǎng)絡連接,又以Socket類支持可靠的流(stream)網(wǎng)絡連接,所以用戶可以產(chǎn)生分布式的客戶機和服務器。
網(wǎng)絡變成軟件應用的分布運載工具。Java程序只要編寫一次,就可到處運行。
4.編譯和解釋性
Java編譯程序生成字節(jié)碼(byte-code),而不是通常的機器碼。Java字節(jié)碼提供對體系結構中性的目標文件格式,代碼設計成可有效地傳送程序到多個平臺。Java程序可以在任何實現(xiàn)了Java解釋程序和運行系統(tǒng)(run-time system)的系統(tǒng)上運行。
在一個解釋性的環(huán)境中,程序開發(fā)的標準“鏈接”階段大大消失了。如果說Java還有一個鏈接階段,它只是把新類裝進環(huán)境的過程,它是增量式的、輕量級的過程。因此,Java支持快速原型和容易試驗,它將導致快速程序開發(fā)。這是一個與傳統(tǒng)的、耗時的“編譯、鏈接和測試”形成鮮明對比的精巧的開發(fā)過程。
5.穩(wěn)健性
Java原來是用作編寫消費類家用電子產(chǎn)品軟件的語言,所以它是被設計成寫高可靠和穩(wěn)健軟件的。Java消除了某些編程錯誤,使得用它寫可靠軟件相當容易。
Java
Java是一個強類型語言,它允許擴展編譯時檢查潛在類型不匹配問題的功能。Java要求顯式的方法聲明,它不支持C風格的隱式聲明。這些嚴格的要求保證編譯程序能捕捉調(diào)用錯誤,這就導致更可靠的程序。
可靠性方面最重要的增強之一是Java的存儲模型。Java不支持指針,它消除重寫存儲和訛誤數(shù)據(jù)的可能性。類似地,Java自動的“無用單元收集”預防存儲漏泄和其它有關動態(tài)存儲分配和解除分配的有害錯誤。Java解釋程序也執(zhí)行許多運行時的檢查,諸如驗證所有數(shù)組和串訪問是否在界限之內(nèi)。
異常處理是Java中使得程序更穩(wěn)健的另一個特征。異常是某種類似于錯誤的異常條件出現(xiàn)的信號。使用try/catch/finally語句,程序員可以找到出錯的處理代碼,這就簡化了出錯處理和恢復的任務。
6.安全性
Java的存儲分配模型是它防御惡意代碼的主要方法之一。Java沒有指針,所以程序員不能得到隱蔽起來的內(nèi)幕和偽造指針去指向存儲器。更重要的是,Java編譯程序不處理存儲安排決策,所以程序員不能通過查看聲明去猜測類的實際存儲安排。編譯的Java代碼中的存儲引用在運行時由Java解釋程序決定實際存儲地址。
Java運行系統(tǒng)使用字節(jié)碼驗證過程來保證裝載到網(wǎng)絡上的代碼不違背任何Java語言限制。這個安全機制部分包括類如何從網(wǎng)上裝載。例如,裝載的類是放在分開的名字空間而不是局部類,預防惡意的小應用程序用它自己的版本來代替標準Java類。
7.可移植性
Java使得語言聲明不依賴于實現(xiàn)的方面。例如,Java顯式說明每個基本數(shù)據(jù)類型的大小和它的運算行為(這些數(shù)據(jù)類型由Java語法描述)。
Java環(huán)境本身對新的硬件平臺和操作系統(tǒng)是可移植的。Java編譯程序也用Java編寫,而Java運行系統(tǒng)用ANSIC語言編寫。
8.高性能
Java是一種先編譯后解釋的語言,所以它不如全編譯性語言快。但是有些情況下性能是很要緊的,為了支持這些情況,Java設計者制作了“及時”編譯程序,它能在運行時把Java字節(jié)碼翻譯成特定CPU(中央處理器)的機器代碼,也就是實現(xiàn)全編譯了。
Java字節(jié)碼格式設計時考慮到這些“及時”編譯程序的需要,所以生成機器代碼的過程相當簡單,它能產(chǎn)生相當好的代碼。
9.多線程性
Java是多線程語言,它提供支持多線程的執(zhí)行(也稱為輕便過程),能處理不同任務,使具有線索的程序設計很容易。Java的lang包提供一個Thread類,它支持開始線索、運行線索、停止線索和檢查線索狀態(tài)的方法。
Java的線索支持也包括一組同步原語。這些原語是基于監(jiān)督程序和條件變量風范,由C.A.R.Haore開發(fā)的廣泛使用的同步化方案。用關鍵詞synchronized,程序員可以說明某些方法在一個類中不能并發(fā)地運行。這些方法在監(jiān)督程序控制之下,確保變量維持在一個一致的狀態(tài)。
10.動態(tài)性
Java語言設計成適應于變化的環(huán)境,它是一個動態(tài)的語言。例如,Java中的類是根據(jù)需要載入的,甚至有些是通過網(wǎng)絡獲取的。[20]
工作原理
由四方面組成:
工作原理
(1)Java編程語言
(2)Java類文件格式
(3)Java虛擬機
(4)Java應用程序接口[21]
當編輯并運行一個Java程序時,需要同時涉及到這四種方面。使用文字編輯軟件(例如記事本、寫字板、UltraEdit等)或集成開發(fā)環(huán)境(Eclipse、MyEclipse等)在Java源文件中定義不同的類[22] ,通過調(diào)用類(這些類實現(xiàn)了Java API)中的方法來訪問資源系統(tǒng),把源文件編譯生成一種二進制中間碼,存儲在class文件中,然后再通過運行與操作系統(tǒng)平臺環(huán)境相對應的Java虛擬機來運行class文件,執(zhí)行編譯產(chǎn)生的字節(jié)碼,調(diào)用class文件中實現(xiàn)的方法來滿足程序的Java API調(diào)用[6] 。
語言基礎
基本數(shù)據(jù)結構
在Java中有8種數(shù)據(jù)類型來存儲數(shù)值、字符和布爾值。
整數(shù)類型
整數(shù)型用來存儲整數(shù)數(shù)值,即沒有小數(shù)部分的數(shù)值??梢允钦龜?shù),也可以是負數(shù)。整數(shù)數(shù)據(jù)在Java程序中有3種表示形式,分別為十進制、八進制和十六進制。
整型數(shù)據(jù)根據(jù)它所占內(nèi)容大小的不同可分為4種類型。
數(shù)據(jù)類型 內(nèi)存
byte
8位
short
16位
int
32位
展開全部
浮點類型
數(shù)據(jù)類型 內(nèi)存
float
32位
double
64位
字符類型
字符類型用于存儲單個字符,占用16位(兩個字節(jié))的內(nèi)存空間。在定義字符型變量時,要以單引號表示。使用char關鍵字可定義字符變量。
數(shù)據(jù)類型 內(nèi)存
char
16位
布爾類型
布爾類型又稱邏輯類型,通過關鍵字boolean來定義布爾類型變量,只有只有true和false兩個取值,分別代表布爾邏輯中的“真”和“假”。布爾類型通常被用在流程控制中作為判斷條件。
關鍵字
關鍵字 含義
abstract
抽象類或方法
assert
用來查找內(nèi)部程序錯誤
break
跳出一個switch或循環(huán)
展開全部
關鍵字參考資料來源[23]
運算符
運算符是一些特殊的符號,主要用于數(shù)學函數(shù)、一些類型的賦值語句和邏輯比較方面。
賦值運算符
賦值運算符以符號“=”表示,它是一個二元運算符(對兩個操作數(shù)作處理),其功能是將右方操作數(shù)所含的值賦給左方的操作數(shù)。
例如:
int a = 100;
算術運算符
運算符 說明
+
加
-
減
*
乘
展開全部
自增和自減運算符
自增和自減是單目運算符,可以放在操作元之前,也可以放在操作元之后。操作元必須是一個整型或浮點型變量。自增、自減運算符的作用是使變量的值增1或減1。放在操作元前面的自增、自減運算符,會先將變量的值加1或減1,然后再使該變量參與表達式的運算。放在操作元后面的自增、自減運算符,會先使變量參與表達式的運算,然后再將該變量的值加1或減1。
例如:
假設a=5
b=++a;//先將a的值加1,然后賦值給b,此時a的值為6,b的值為6
b=a++;//先將a的值賦值給b,再將a的值變?yōu)?,此時a的值為6,b的值為5
比較運算符
比較運算符屬于二元運算符,用于程序中的變量之間,變量和自變量之間以及其他類型的信息之間的比較。比較運算符的運算結果是boolean型。當運算符對應的關系成立時,運算的結果為true,否則為false。比較運算符共有6個,通常作為判斷的依據(jù)用于條件語句中。
運算符 說明
比較左方是否大于右方
比較左方是否小于右方
==
比較左方是否等于右方
展開全部
邏輯運算符
運算符 作用
邏輯與
||
邏輯或
!
邏輯非
語言基礎參考資料來源[24]
程序舉例
/*一個簡單的Java應用程序,顯示內(nèi)容:Hello World!
文件名為Hello.java*/
class Hello{
//程序開始于main()
public static void main(String args[]){
System.out.println("Hello World!");
}
}
main方法,正如注釋所說,這是程序開始執(zhí)行的第一行。對于一個Java應用程序來說,main方法是必需的,Java解釋器在沒有生成任何對象的情況下,以main作為入口來執(zhí)行程序。每個類中可以定義多個方法,但main方法只能有一個。關鍵字public表示訪問權限,指明所有的類都可以使用這一方法。本例中,main必須被定義為public類型,因為當程序開始執(zhí)行時它需要被它的類之外的代碼調(diào)用。關鍵字static指明該方法是一個類方法。關鍵字void指明main()方法不返回任何值。main方法圓括號中定義的String args[]是傳送給main方法的參數(shù),參數(shù)名為args,它是類String的一個對象。方法的參數(shù)用“類名參數(shù)名”來指定,多個參數(shù)間用逗號分隔。該行的最后一個字符是“{”,它表示了main程序體的開始,一個方法中包含的所有代碼都將包括在這對花括號中間。另外,main僅是解釋器開始工作的地方,一個復雜的程序可能包含幾十個類,但這些類僅需要一個main方法。[25]
語言標準
1997年11月17日,國際標準化組織(ISO)同意采納Sun公司的專利技術——Java作為ISO標準。JAVA作為一個技術標準供公眾無償使用。根據(jù)ISO的批準,Sun公司將可提交JAVA的標準化平臺規(guī)范。[26]
發(fā)布時間 名稱
2000年11月15日
ISO/TS 10303-27:2000
2006年5月15日
ISO/IEC 19777-2:2006
2014年7月15日
ISO/IEC TR 13066-6:2014
展開全部
語言標準參考資料[27] [28] [29] [30] [31]
語言規(guī)范
JCP(Java Community Process)是一個開放的國際組織,主要由Java開發(fā)者以及被授權者組成,職能是發(fā)展和更新Java技術規(guī)范、參考實現(xiàn)(RI)、技術兼容包(TCK)。
JCP維護的規(guī)范包括Java ME、Java SE、Java EE、XML、OSS、JAIN等。組織成員可以提交JSR(Java Specification Requests),通過特定程序以后,進入到下一版本的規(guī)范里面。
JSR是早期提議和最終發(fā)布的Java平臺規(guī)范的具體描述。通常,一個新的JSR的提出是為了增加或者規(guī)范Java平臺的功能。某個具體的JSR由專家組共同來制定,工作由組長協(xié)調(diào)。例如,CLDC1.0(Connected Limited Device Configuration,JSR30)由Sun公司的Antero Taivalsaari擔任組長,同時專家組的成員還包括Siemens、Motorola、Nokia、Symbian等。Java ME平臺規(guī)范是在JSR68中定義的,規(guī)范組長是Sun公司的Jon Courtney。
JSR完成后,相關的規(guī)范及JavaAPI會在JCP的官方網(wǎng)站發(fā)布。設備制造商可以在自己的產(chǎn)品中實現(xiàn)某個JSR,如MIDP2.0(JSRll8)。但是這些都必須要通過TCK(Technology Compatibility Kit)測試以確保技術兼容性。[32]
按照技術類別可以分成以下幾類:
1、J2EE平臺規(guī)范[33]
2、J2SE平臺規(guī)范[34]
3、J2ME平臺規(guī)范[35]
4、運營支持系統(tǒng)規(guī)范(OSS)[36]
5、綜合網(wǎng)絡的Java 應用(JAIN)[37]
6、XML 操作規(guī)范[38]
技術應用
1、Android應用
許多的 Android應用都是Java程序員開發(fā)者開發(fā)。雖然 Android運用了不同的JVM以及不同的封裝方式,但是代碼還是用Java語言所編寫。相當一部分的手機中都支持JAVA游戲,這就使很多非編程人員都認識了JAVA。
2、在金融業(yè)應用的服務器程序
Java在金融服務業(yè)的應用非常廣泛,很多第三方交易系統(tǒng)、銀行、金融機構都選擇用Java開發(fā),因為相對而言,Java較安全[39] 。大型跨國投資銀行用Java來編寫前臺和后臺的電子交易系統(tǒng),結算和確認系統(tǒng),數(shù)據(jù)處理項目以及其他項目。大多數(shù)情況下,Java被用在服務器端開發(fā),但多數(shù)沒有任何前端,它們通常是從一個服務器(上一級)接收數(shù)據(jù),處理后發(fā)向另一個處理系統(tǒng)(下一級處理)。
3、網(wǎng)站
Java 在電子商務領域以及網(wǎng)站開發(fā)領域占據(jù)了一定的席位。開發(fā)人員可以運用許多不同的框架來創(chuàng)建web項目,SpringMVC,Struts2.0以及frameworks。即使是簡單的 servlet,jsp和以struts為基礎的網(wǎng)站在政府項目中也經(jīng)常被用到。例如醫(yī)療救護、保險、教育、國防以及其他的不同部門網(wǎng)站都是以Java為基礎來開發(fā)的。
4、嵌入式領域
Java在嵌入式領域發(fā)展空間很大。在這個平臺上,只需130KB就能夠使用Java技術(在智能卡或者傳感器上)。
5、大數(shù)據(jù)技術
Hadoop以及其他大數(shù)據(jù)處理技術很多都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。
6、高頻交易的空間
Java平臺提高了這個平臺的特性和即使編譯,他同時也能夠像 C++ 一樣傳遞數(shù)據(jù)。正是由于這個原因,Java成為的程序員編寫交易平臺的語言,因為雖然性能不比C++,但開發(fā)人員可以避開安全性,可移植性和可維護性等問題。
7、科學應用
Java在科學應用中是很好選擇,包括自然語言處理。最主要的原因是因為Java比C++或者其他語言相對其安全性、便攜性、可維護性以及其他高級語言的并發(fā)性更好。
Java語言好學難精,配置東西比較復雜
網(wǎng)站欄目:java代碼熱更 Java 熱更新
文章網(wǎng)址:http://www.rwnh.cn/article20/higoco.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、外貿(mào)網(wǎng)站建設、做網(wǎng)站、網(wǎng)站建設、網(wǎng)站策劃、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)