Java 入門基礎
Java軟體工程師是指運用Java這個開發工具去完成軟體產品的軟體程式設計、開發、測試、維護升級等工作的人員。
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Java 入門基礎知識
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Java 是由Sun Microsystems公司於1995年5月推出的高階程式設計語言。
Java可執行於多個平臺,如Windows, Mac OS,及其他多種UNIX版本的系統。
建立java檔案(檔名需與類名一致)
String args[] 與 String[] args 都可以執行,但推薦使用 String[] args,這樣可以避免歧義和誤讀。
:::::::::::::::::::::::::::::::::::::::::::
Java 簡介
Java是由Sun Microsystems公司於1995年5月推出的Java物件導向程式設計語言和Java平臺的總稱。由James Gosling和同事們共同研發,並在1995年正式推出。
Java分為三個體系:
JavaSE(J2SE) (Java2 Platform Standard Edition,java平臺標準版)
JavaEE(J2EE) (Java 2 Platform,Enterprise Edition,java平臺企業版)
JavaME(J2ME) (Java 2 Platform Micro Edition,java平臺微型版)。
2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名以取消其中的數字"2":J2EE更名為Java EE, J2SE更名為Java SE,J2ME更名為Java ME。
。。。。。。
主要特性
1. Java語言是簡單的:
Java語言的語法與C語言和C++語言很接近,使得大多數程式設計師很容易學習和使用。另一方面,Java丟棄了C++中很少使用的、很難理解的、令人迷惑的那些特性,如運算子過載、多繼承、自動的強制型別轉換。特別地,Java語言不使用指標,而是引用。並提供了自動的廢料收集,使得程式設計師不必為記憶體管理而擔憂。
2. Java語言是物件導向的:
Java語言提供類、介面和繼承等物件導向的特性,為了簡單起見,只支援類之間的單繼承,但支援介面之間的多繼承,並支援類與介面之間的實現機制(關鍵字為implements)。Java語言全面支援動態繫結,而C++語言只對虛擬函式使用動態繫結。總之,Java語言是一個純的物件導向程式設計語言。
3. Java語言是分散式的:
Java語言支援Internet應用的開發,在基本的Java應用程式設計介面中有一個網路應用程式設計介面(java net),它提供了用於網路應用程式設計的類庫,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(遠端方法啟用)機制也是開發分散式應用的重要手段。
4. Java語言是健壯的:
Java的強型別機制、異常處理、垃圾的自動收集等是Java程式健壯性的重要保證。對指標的丟棄是Java的明智選擇。Java的安全檢查機制使得Java更具健壯性。
5. Java語言是安全的:
Java通常被用在網路環境中,為此,Java提供了一個安全機制以防惡意程式碼的攻擊。除了Java語言具有的許多安全特性以外,Java對透過網路下載的類具有一個安全防範機制(類ClassLoader裝載器),如分配不同的名字空間以防替代本地的同名類、位元組程式碼檢查,並提供安全管理機制(類SecurityManager)讓Java應用設定安全哨兵。
6. Java語言是體系結構中立的:
Java程式(字尾為java的檔案)在Java平臺上被編譯為體系結構中立的位元組碼格式(字尾為class的檔案),然後可以在實現這個Java平臺的任何系統中執行。這種途徑適合於異構的網路環境和軟體的分發。
7. Java語言是可移植的:
這種可移植性來源於體系結構中立性,另外,Java還嚴格規定了各個基本資料型別的長度。Java系統本身也具有很強的可移植性,Java編譯器是用Java實現的,Java的執行環境是用ANSI C實現的。
8. Java語言是解釋型的:
如前所述,Java程式在Java平臺上被編譯為位元組碼格式,然後可以在實現這個Java平臺的任何系統中執行。在執行時,Java平臺中的Java直譯器對這些位元組碼進行解釋執行,執行過程中需要的類在聯接階段被載入到執行環境中。
9. Java是高效能的:
與那些解釋型的高階指令碼語言相比,Java的確是高效能的。事實上,Java的執行速度隨著JIT(Just-In-Time)編譯器技術的發展越來越接近於C++。
10. Java語言是多執行緒的:
在Java語言中,執行緒是一種特殊的物件,它必須由Thread類或其子(孫)類來建立。通常有兩種方法來建立執行緒:其一,使用型構為Thread(Runnable)的構造子將一個實現了Runnable介面的物件包裝成一個執行緒,其二,從Thread類派生出子類並重寫run方法,使用該子類建立的物件即為執行緒。值得注意的是Thread類已經實現了Runnable介面,因此,任何一個執行緒均有它的run方法,而run方法中包含了執行緒所要執行的程式碼。執行緒的活動由一組方法來控制。Java語言支援多個執行緒的同時執行,並提供多執行緒之間的同步機制(關鍵字為synchronized)。
11. Java語言是動態的:
Java語言的設計目標之一是適應於動態變化的環境。Java程式需要的類能夠動態地被載入到執行環境,也可以透過網路來載入所需要的類。這也有利於軟體的升級。另外,Java中的類有一個執行時刻的表示,能進行執行時刻的型別檢查。
。。。。。。
發展歷史
1995年5月23日,Java語言誕生
1996年1月,第一個JDK-JDK1.0誕生
1996年4月,10個最主要的作業系統供應商申明將在其產品中嵌入JAVA技術
1996年9月,約8.3萬個網頁應用了JAVA技術來製作
1997年2月18日,JDK1.1釋出
1997年4月2日,JavaOne會議召開,參與者逾一萬人,創當時全球同類會議規模之紀錄
1997年9月,JavaDeveloperConnection社群成員超過十萬
1998年2月,JDK1.1被下載超過2,000,000次
1998年12月8日,JAVA2企業平臺J2EE釋出
1999年6月,SUN公司釋出Java的三個版本:標準版(JavaSE,以前是J2SE)、企業版(JavaEE以前是J2EE)和微型版(JavaME,以前是J2ME)
2000年5月8日,JDK1.3釋出
2000年5月29日,JDK1.4釋出
2001年6月5日,NOKIA宣佈,到2003年將出售1億部支援Java的手機
2001年9月24日,J2EE1.3釋出
2002年2月26日,J2SE1.4釋出,自此Java的計算能力有了大幅提升
2004年9月30日18:00PM,J2SE1.5釋出,成為Java語言發展史上的又一里程碑。為了表示該版本的重要性,J2SE1.5更名為Java SE 5.0
2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名,以取消其中的數字"2":J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME
2006年12月,SUN公司釋出JRE6.0
2009年04月20日,甲骨文74億美元收購Sun。取得java的版權。
2010年11月,由於甲骨文對於Java社群的不友善,因此Apache揚言將退出JCP[4]。
2011年7月28日,甲骨文釋出java7.0的正式版。
2014年3月18日,Oracle公司發表Java SE 8。
。。。。。。
JDK環境配置:
1. 到官網下載JDK
2. 安裝(根據提示就可以)
3. 開啟我的電腦--高階系統設定--系統變數
新增JAVA_HOME:根據自己的實際安裝路徑來新增
新增CLASSPATH: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; //記得前面有個"."
編輯系統變數的path:在最前面加上:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
然後在開始那裡找到cmd輸入java -version,java,javac,看看是否搭建成功。
。。。。。。
Java開發工具
Java語言儘量保證系統記憶體在1G以上,其他工具如下所示:
Linux 系統、Mac OS 系統、Windows 95/98/2000/XP,WIN 7/8系統。
Java JDK 7、8……
Notepad 編輯器或者其他編輯器。
IDE:Eclipse
安裝好以上的工具後,我們就可以輸出Java的第一個程式"Hello World!"
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900592/viewspace-2222172/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- java基礎(六):RabbitMQ 入門JavaMQ
- Java入門基礎知識點Java
- Java基礎知識入門-JDKJavaJDK
- Java入門之基礎程式設計Java程式設計
- Java-基礎-執行緒入門Java執行緒
- java入門基礎學習----泛型Java泛型
- 【FastAPI】入門基礎ASTAPI
- Linux基礎入門Linux
- Ansible 基礎入門
- sqlServer 基礎入門SQLServer
- shell入門基礎
- go基礎入門Go
- SQL基礎入門SQL
- SQL入門基礎SQL
- Kubernetes 入門基礎
- Kafka基礎入門Kafka
- mongodb基礎入門MongoDB
- MySQL 基礎入門MySql
- RabbitMQ基礎入門MQ
- JavaScript入門基礎JavaScript
- Nginx 基礎入門Nginx
- Zookeeper基礎入門
- SpringCloud基礎入門SpringGCCloud
- ZooKeeper 基礎入門
- Bootstrap基礎入門boot
- Html基礎入門HTML
- Vim 入門:基礎
- ElasticSearch基礎入門Elasticsearch
- HTML 基礎入門HTML
- Maven入門基礎Maven
- Dart 基礎入門Dart
- Elasticsearch 基礎入門Elasticsearch
- Redis入門基礎Redis
- goalng 基礎入門Go
- 零基礎學Java需知:Java小白入門解疑大全Java
- Java零基礎入門(三)流程控制Java
- 前端基礎入門四(JavaScript基礎)前端JavaScript
- 零基礎快速入門:java的命名規範Java