【java學習】java知識點總結

兔兔西發表於2018-10-06

1,java歷史

1.1 java基於C++

1.1.1 JAVA和C++區別

1.2 JDK(Java Development Kit)

1.3 Java編碼約定

1.4 編譯型語言、解釋型語言、指令碼語言

任何語言都必須翻譯成機器語言,計算機才能執行高階語言編寫的程式。 翻譯的方式有兩種:一個是編譯,一個是解釋。

1.4.1 編譯型語言

編譯型語言寫的程式在被執行之前,需要一個專門的編譯過程,把程式編譯為機器語言的檔案比如exe檔案,以後要執行就不需要重新編譯了,直接使用編譯好的結果(exe檔案)就好了,編譯型語言的程式執行效率高。
如:c/c++

1.4.2 解釋型語言

解釋型語言不需要編譯,在執行程式的時候才翻譯,比如解釋型basic語言,專門有一個直譯器能夠直接執行basic程式,每個語言都是在執行的時候才翻譯。解釋型語言每執行一次就要翻譯一次,效率比較低,但是跨平臺性好。
如:Java,c#,basic,Python

1.4.3 指令碼語言(解釋性的語言的一種)

指令碼語言(JavaScript,VBscript等)介於HTML和C,C++,Java,C#等程式語言之間
指令碼語言與程式語言也有很多相似地方,其函式與程式語言比較相象一些,其也涉及到變數。與程式語言之間最大的區別是程式語言的語法和規則更為嚴格和複雜一些。

與程式程式碼的關係:指令碼也是一種語言,其同樣由程式程式碼組成
注:指令碼語言一般都有相應的指令碼引擎來解釋執行。 他們一般需要直譯器才能執行。JAVASCRIPT,ASP,PHP,PERL都是指令碼語言。C/C++編譯、連結後,可形成獨立執行的exe檔案。
例如vbscript,javascript,installshield script等等,它不象c/c++等可以編譯成二進位制程式碼,以可執行檔案的形式存在。指令碼語言不需要編譯,可以直接用,由直譯器來負責解釋,不過每次都需要翻譯,執行速度慢。
指令碼語言一般都是以文字形式存在,類似於一種命令
舉個例子說,如果你建立了一個程式,叫aaa.exe,可以開啟.js為副檔名的檔案。
你為.js檔案的編寫指定了一套規則(語法),當別人編寫了.js檔案後,你的程式用這種規則來理解編寫人的意圖,並作出回應.那麼,這一套規則就是指令碼語言。
如:vbscript,javascript,ASP,PHP,PERL,Nuva
指令碼語言兩大特性:一、解釋執行 二、執行檔案為文字

1.4.4 解釋型語言和指令碼語言的區別

  • 指令碼語言是解釋型的語言,也就是解釋型語言包括指令碼語言。
  • 解釋語言是說解釋執行的語言,但執行的程式碼並不一定是文字格式的。
  • 指令碼語言的程式是文字檔案,並且是解釋執行的。

2,類和物件

2.1 類Class

2.2 物件導向三大特性:封裝,繼承,多型

2.3 Java記憶體模型

2.4 資料型別

2.5 類 JVM底層機制

2.6 列舉類

3,java基礎

3.1 位運算

3.2 控制執行流程

3.3 不固定引數個數方法

public void addCondition(String condition, Object... params){}

3.4 集合框架

3.5 裝箱與拆箱、泛型

3.6 正規表示式(Regular Expression)

3.7 Json框架

3.8 系統錯誤處理機制:異常、斷言和日誌

3.9 java8新特性

3.10 輸入與輸出

3.11 jar、arr和程式打包

4,安全機制

4.1 修飾符

4.2

5,資料庫

5.1 語法

5.2 連線與使用

6,網路連線

6.1 網路基礎

TCP/UDP
IP計算

6.2 Socket、HTTP

socket傳輸中,流的關閉

android端通過socket接收到資料產生亂碼

socket ECONNRESET 異常

socket長連線,造成資料粘包問題

【Android學習】斷線重連、長連線心跳機制

7,多執行緒與併發

7.1 程式、執行緒、程式

7.2 java鎖

7.3 多執行緒併發

7.4 ThreadPoolExecutor 執行緒池

8,GUI 圖形程式設計

9,java web

相關文章