Java基礎是學習JavaEE、大資料、Android開發
的基石! I



Java基礎知識圖解

Java基礎課程體系


1.1 軟體開發介紹
- 軟體開發
軟體,即一系列按照特定順序組織的計算機資料和指令的集合,有系統軟體和應用軟體之分, - 人機互動方式
>圖形化界面(Graphical User Interface GUl)這種方式簡單直觀,使用者易于接受,容易上手操作,
>命令列方式(Command Line Interface CLI):需要有一個控制臺,輸入特定的指令,讓計算機完成一些操作,較為麻煩,需要記錄住一些命令,
Pascal之父Nicklaus Wirth:“Algorithms+Data Structures=Programs
1.2 軟體開發介紹
-
常用的DOS命令
>dir:列出當前目錄下的檔案以及檔案夾
>md:創建目錄
>rd:洗掉目錄
>cd:進入指定目錄
>cd…:退回到上一級目錄>cd:退回到根目錄>del:洗掉檔案
>exit:退出dos 命令列
√補充:echo javase>1.doc -
常用快捷鍵
一一:移動游標
1:調閱歷史操作命令
Delete和Backspace:洗掉字符
1.2 計算機編程語言介紹
- 什么是計算機語言
>語言:是人與人之間用于溝通的一種方式,例如:中國人與中國人用普通話溝通,而中國人要和英國人交流,就要學習親語
>計算機語言:人與計算機交流的方式,
如果人要與計算機交流,那么就要學習計算機語言,
計算機語言有很多種,如:c,C++,Java,PHP,Kotlin,Python,Scala等,
●第一代語言
>機器語言,指令以二進制代碼形式存在,
●第二代語言
>匯編語言,使用助記符表示一潭訓器指令,

第三代語言:高級語言
>C、Pascal、Fortran面向程序的語言
>C++面向程序/面向物件
>Java跨平臺的純面向物件的語言
>.NET跨語言的平臺
>Python、Scala…



TIOBE 是一個流行編程語言排行,每月更新,排名權重 基于世界范圍內 工程師數量,課程數量,和第三方供應商數量,Google ang Yahoo! Wikipedia Amazon Youtube和百度這些主流的搜索引擎,也將作為排名權重的參考指標,宣告:TIOBE排名既無關最好的編程語言,也無關被書寫了最多行代碼的編星語言,

1.3 Java語言概述
- 是SUN(Stanford University Network,斯坦福大學網路公司)1995年推出的一門高級編程語言,
- 是一種面向Internet的編程語言,Java一開始富有吸引力是因為Java程式可以在Web瀏覽器中運行,這些Java程式被稱為Java小程式(applet),applet使用現代的圖形用戶界面與Web用戶進行互動,applet內嵌在HTML代碼中,
- 隨著Java技術在web方面的不斷成熟,已經成為Web應用程式的首選開發語言
1.3Java語言概述:Java簡史
1991年 Green專案,開發語言最初命名為Oak(橡樹)
1994年,開發組意識到Oak 非常適合于互聯網
1996年,發布JDK1.0,約8.3萬個雙頁應用Java技術來制作
1997年,發布JDK 1.1,JavaOne會議召開,創當時全球同類會議規模之最
1998年,發布JDK 1.2,同年發布企業平臺J2EE
1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技術誕生
2004年,發布里程碑式版本:JDK 1.5,為突出此版本的重要性,更名為JDK 5.0
2005年,J2SE->JavaSE,J2EE->JavaEE,J2ME ->JavaME
2009年,Oracle公司收購SUN,交易價格74億美元
2011年,發布JDK 7.0
2014年,發布JDK8.0,是繼JDK 5.0以來變化最大的版本
2017年,發布JDK 9.0,最大限度實作模塊化
2018年3月,發布JDK10.0,版本號也稱為18.3
2018年9月,發布JDK 11.0,版本號也稱為18.9

Java技術體系平臺
Java SE(Java Standard Edition)標準版
支持面向桌面級應用(如Windows下的應用程式)的Java平臺,提供了完整的Java核心API,此版本以前稱為J2SE
Java EE(Java Enterprise Edition)企業版
是為開發企業環境下的應用程式提供的一套解決方案,該技術體系中包含的技術如:Servlet、Jsp等,主要針對于Web應用程式開發,版本以前稱為J2EE
Java ME(Java Micro Edition)小型版
支持Java程式運行在移動終端(手機、PDA)上的平臺,對JavaAPI有所精簡,并加入了針對移動終端的支持,此版本以前稱為J2ME
Java Card
支持一些Java小程式(Applets)運行在小記憶體設備(如智能卡)上的平臺
1.3 Java語言概述:Java在各領域的應用
·從Java的應用領域來分,Java語言的應用方向主要表現在以下幾個方面:
- ,企業級應用:主要指復雜的大企業的軟體系統、各種型別的網站,Java的安全機制以及它的跨平臺的優勢,使它在分布式系統領域開發中有廣泛應用,應用領域包括金融、電信、交通、電子商務等,
- Android平臺應用:Android應用程式使用Java語言撰寫,Android開發水平的高低很大程度上取決于Java語言核心能力是否扎實,
- ·大資料平臺開發:各類框架有Hadoop,spark,storm,flink等,就這類技術生態圈來講,還有各種中間件如flume,kafka,sqoop等等,這些框架以及工具大多數是用Java撰寫而成,但提供諸如Java,scala,python,R等各種語言API供編程,·移動領域應用:主要表現在消費和嵌入式領域,是指在各種小型設備上的應用,包括手機、PDA、機頂盒、汽車通信設備等,
1.3 Java語言概述:Java語言的誕生
java之父Jmes Gosling團隊在開發"Green"專案時,發現C缺少垃圾回收系統,還有可移植的安全性、分布程式設計和多執行緒功能,最后,他們想要一種易于移植到各種設備上的平臺,
Java確實是從C語言和C++語言繼承了許多成份,甚至可以將Java看成是類c語言發展和衍生的產物,比如Java語言的變數宣告,運算子形式,引數傳遞,流程控制等方面和C語言,C++語言完全相同,但后時,Java是一個純粹的面向物件的程式設計語言,它繼承了C++語言面向物件技術的核心,Java舍棄了c語言中容易引起錯誤的指標(以參考取代)、運算子多載(operator overloading)、多重繼承(以介面取代)等特性,增加了垃圾回收器功能用于回收不再被參考的物件所占據的記憶體空間,JDK1.5又引入了泛型編程(Generic Programming)、型別安全的列舉、不定長引數和自動裝/拆箱

1.3 Java語言概述:主要特性
- Java語言是易學的,Java語言的語法與C語言和C++語言很接近,使得大多數程式員很容易學習和使用Java,
- Java語言是強制面向物件的,Java語言提供類、介面和繼承等原語,為了簡單起見只支持類之間的單繼承,但支持介面之間的多繼承,并支持類與介面之間的實作機制(關鍵字為implements),
- Java語言非分布式的,Java語言支持Internet應用的開發,在基本的Java應用編程介面中有一個網路應用編程介面(iava
net),它提供了用于網路應用編程的類別庫,包括URL、URLConnection、Socket、ServerSocket等,Java的RMI(遠程方法激活)機制也是開發分布式應用的重要手段, - Java語言是健壯的,Java的強型別機制、例外處理、垃圾的自動收集等是Java程式健壯性的重要保證,對指標的丟棄是Java的明智選擇,
- Java語言是安全的,Java通常被用在網路環境中,為此,Java提供了一個安全機制以防惡意代碼的攻擊,如:安全防范機制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、位元組代碼檢查,
- Java語言是體系結構中立的,Java程式(后綴為java的檔案)在Java平臺上被編譯為體系結構中立的位元組碼格式(后綴為class的檔案),然后可以在實作這個Java平臺的任何系統中運行,
- Java語言是解釋型的,如前所述,Java程式在Java平臺上被編譯為位元組碼格式然后可以在實作這個Java平臺的任何系統的解釋器中運行,
- Java是性能略高的,與那些解釋型的高級腳本語言相比,Java的性能還是較優的
- Java語言是原生支持多執行緒的,在Java語言中,執行緒是一種特殊的物件,它必須由Thread類或其子(孫)類來創建,
1.4 Java語言運行機制及運行程序
Java語言的特點
特點一:面向物件
√兩個基本概念:類、物件
√三大特性:封裝、繼承、多型
特點二:健壯性
√吸收了C/C++語言的優點,但去掉了其影響程式健壯性的部分(如指標、記憶體的申請與釋放等),提供了一個相對安全的記憶體管理和訪問機制
特點三:跨平臺性
√跨平臺性:通過Java語言撰寫的應用程式在不同的系統平臺上都可以運行,“Write once,Run Anywhere"
√原理:只要在需要運行java 應用程式的作業系統上,先安裝一個Java虛擬機(JVM Java Virtual Machine)即可,由JVM來負責Java程式在該系統中的運行,
Java語言的特點:跨平臺生

因為有了JVM,同一個Java 程式在三個不同的作業系統中都可以執行,這樣就實作了Java 程式的跨平臺性,
Java兩種核心機制
>Java虛擬機(Java Virtal Machine)
>垃圾收集機制(Garbage Collection)
核心機制-Java虛擬機
●JVM是一個虛擬的計算機 具有指令集并使用不同的存盤區域,負責執行指令,管理資料、記憶體、暫存器
●對于不同的平臺,有不同的虛擬機,
●只有某平臺提供了對應的java虛擬機,java程式才可在此平臺運行
●Java虛擬機機制屏蔽了底層運行平臺的差別,實作了“一次編譯,到處運行”


核心機制一垃圾回收
●不再使用的記憶體空間應回收-- 垃圾回收,
在C/C++等語言中,由程式員負責回收無用記憶體,
Java 語言消除了程式員回收無用記憶體空間的責任:它提供一種系統級執行緒跟蹤存盤空間的分配情況,并在JVM空閑時,檢查并釋放那些可被釋放的存盤空間,
●垃圾回收在Java程式運行程序中自動進行,程式員無法精確控制和干預,
●Java程式還會出現記憶體泄漏和記憶體溢位問題嗎?Yes!
1.5 Java語言的環境搭建
●明確什么是JDK.JRE
●下載 JDK
●安裝 JDK
●配置環境變數
>path:windows系統執行命令時要搜尋的路徑,
●驗證是否成功:javac java
●選擇合適的文本編輯器或 IDE 開發
什么是JDK,JRE
JDK(Java Development Kit Java開發工具包)
JDK是提供給Java開發人員使用的,其中包含了java的開發工具,也包括了 JRE,所以安裝了JDK,就不用在單獨安裝JRE了,
>其中的開發工具:編譯工具(javac.exe)打包工具(jarexe)等 JRE(Java Runtime EnvironmentJava運行環境)
包括Java虛擬機(JVM Java Virtual Machine)和Java程式所需的核心類別庫等,如果想要運行一個開發好的Java程式,計算機中只需要安裝JRE即可,
簡單而言,使用JDK的開發工具完成的java程式,交給JRE去運行,
1.5 Java語言的環境搭建:JDK、JRE、JVM關系

·JDK=JRE+開發工具集(例如Javac編譯工具等)·
·JRE =JVM +Java SE標準類別庫

1.5 Java語言的環境搭建:下載并安裝JDK 尚
●官方網址:
>www.oracle.coml
>java.sun.com
●安裝JDK
>傻瓜式安裝,下一步即可,
>建議:安裝路徑不要有中文或者空格等特殊符號,
>如果作業系統是64位的,軟體盡量選擇支持64位的(除非軟體本身不區分),
>當提示安裝 JRE 時,正常在JDK安裝時已經裝過了,但是為了后續使用Eclipse等開發工具不報錯,建議也根據提示安裝JRE.
1.5 Java語言的環境搭建 尚硅谷

1.6 開發體驗- HelloWorld
●步驟:
1. 將 Java 代碼撰寫到擴展名為 java 的檔案中,
2.通過 javac 命令對該 java 檔案進行編譯,
2. 通過 iava 命令對生成的 class 檔案進行運行,

1.8 注 釋(comment)
●用于注解說明解釋程式的文字就是注釋,
●Java中的注釋型別:
>單行注釋
>多行注釋
>檔案注釋 (java特有)
●提高了代碼的閱讀性:除錯程式的重要方法,
●注釋是一個程式員必須要具有的良好編程習慣
●將自己的思想通過注釋先整理出來,再用代碼去體現
檔案注釋(Java特有)
>格式:/
@author 指定java程式的作者
@version 指定源檔案的版本
/*
●注釋內容可以被JDK提供的工具javadoc 所決議,生成一套以網頁檔案形式體現的該程式的說明檔案,
●操作方式
D:\javasecode \nit1>javadoc -d nydoc -author -version HelloMorld.java
●多行注釋是不可以嵌套使用的

1.9 Java API的檔案
●API(Application Programming Interface,應用程式編程介面)是 Java 提供的基本編程介面,
●Java語言提供了大量的基礎類,因此 Oracle 也為這些基礎類提供了相應的
API檔案,用于告訴開發者如何使用這些類,以及這些類里包含的方法,
●下載APl:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
>Additional Resources-Java SE 8 Documentation下載,
●詳見:JDK8的下載-安裝-配置.doc

1.10 良好的編程風格
●正確的注釋和注釋風格
>使用檔案注釋來注釋整個類或整個方法,
>如果注釋方法中的某一個步驟,使用單行或多行注釋,
●正確的縮進和空白
>使用一次tab操作,實作縮進
>運算子兩邊習慣性各加一個空格,比如:2+4*5,
●塊的風格
>Java API 源代碼選擇了行尾風格

1.11 常用的Java開發工具
●文本編輯工具:
記事本
>UltraEdit
>EditPlus
>TextPad
>NotePad





轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/350751.html
標籤:其他
上一篇:imutils
