Java learn 01 Java basic

Chap 0 Preface

Java Basic Content List

  • Java data type、 標識符、運算符、表達式和語句、分支、循環、方法java

  • OO程序員

  • Exception編程

  • Java Array數組

  • Java 經常使用類socket

  • Java 容器類函數式編程

  • Collection / Generic函數

  • Java I/O Stream工具

  • Java Thread學習

  • Java TCP/UDP, socket編碼

Three levels of ability

  1. 知識 -- 學習前人的知識

  2. 解決問題的方法 -- 靈活運用學到的知識

  3. 解決問題的思路 -- 創造解決問題的方法

Category of knowledge

  1. 實際開發中常常使用的 -- 緊緊掌握

  2. 不常常使用用時就能查獲得的 -- 瞭解

  3. 八輩子用不着一回的 -- 運用本身的能力去查

Learning method

你怎麼去了解一座高山? 怎麼去了解你的校園?
你怎麼去畫一樹寒梅

先學脈絡,再學細節,這是規律,請務必尊重學習規律

Summary

  • 樂觀的努力

  • 眼光要高遠

  • 腳步要踏實


Chap 1 Java 概述

focus on :

  • Java 語言的歷史地位

  • Java 發展史

  • Java 特色

  • Java 運行機制

  • JDK & JRE

  • Java env install

  • Java Basic Content

1.1 Java的歷史地位

  • 第一代語言

    • 打孔機 -- 純機器語言

  • 第二代語言

    • 彙編

  • 第三代語言

    • C 面向過程的語言

    • C++ 面向過程/面向對象

    • Java 跨平臺的純面向對象的語言

    • Scala 函數式編程/面向對象 JVM

    • Python 解釋

    • Go

conclude : 計算機語言朝着人類易於理解的方向發展

1.2 Java 發展史

  • 95年, Sun發佈JDK1.0

  • 98年, JDK1.2, 改名爲Java2

  • 目前, JDK 1.5, 1.7, 1.8

1.3 Java 特色

  • 一種 OO 語言

  • 一種平臺無關的語言, 提供程序運行的解釋環境

  • 一種健壯的語言, 吸取了C/C++語言的優勢, 但去掉了其影響程序健壯性的部分(如: 指針, 內存的申請與釋放等)。

1.4 Java程序運行機制

Java 兩種核心機制:
  • JVM

  • Garbage collection [垃圾收集機制]

JVM
  • java虛擬機能夠理解成一個以字節碼爲機器指令的CPU

  • Java虛擬機機制屏蔽了底層運行平臺的差異, 實現了"一次編譯, 隨處運行"。

x.java --編譯--> x.class --執行--> JVM

Garbage collection
  • Java語言消除了程序員回收無用內存空間的責任;

  • 它提供一種系統級線程跟蹤存儲空間的分配狀況,並在JVM的空閒時, 檢查並釋放那些可被釋放的存儲器空間。

1.5 JDK & JRE

  • Software Development Kit (軟件開發包) 開發須要 JDK

  • Java Runtime Environment 用戶只需 JRE

1.6 Java env install

/etc/profile or .zshrc

### JAVA ###
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
JAVA_BIN=$JAVA_HOME/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/dt.jar:$JAVA_HOME/jre/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

classpath : java在編譯和運行時要找的class所在的路徑
建議你的 JDK 裝在不帶空格的目錄裏面

Chap 2 simple Java program

2.1 命名規則

  1. 類名首字母大寫

  2. 變量名和方法名的首字母小寫

  3. 運用駝峯標識

1.9 HelloWorld

HelloWorld.java

public class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello Java.");
  }
}

一個源文件中最多隻能有一個public類. 其它類的個數不限,若是源文件 文件包含一個public class 它必需按該 class-name 命名

2.2 Java 3 種 註釋方式

// 單行註釋 
 
 /* 多行註釋 */   
 
/** 
  * 用於多行註釋,而且能夠被doc工具解析 
  */

Chap 3 Java 基礎程序設計

3.1 Java data_type

-- 整數類型 (byte, short, int, long)  
                              -- 數值型 --     
                             |            -- 浮點類型 (float, double)  
               --基本數據類型  -- 字符型 (char)  
              |              |  
              |               -- 布爾型 (boolean)  
    數據類型 --                           
              |               -- 類 (class)  
              |              |  
               --引用數據類型  -- 接口 (interface)  
                             |  
                              -- 數組 (array)

java 中定義了 4類 8種 基本數據類型
boolean 類型只容許取值 true / false , 不能夠用 0 或 非0 替代。
char 採用 Unicode 編碼 (全球語言統一編碼), 每一個字符佔兩個字節

Chap 4 Array & Method

public class Test {  
    public static void main(String[] args) {  
        Date[] days;  
        days = new Date[3];  
        for (int i = 0; i < 3; i++) {  
            days[i] = new Date(2004, 4, i+1);  
        }
        // 
        int[] a = {1, 2, 3, 4, 5, 6, 7};  
        for (int i = 0; i < a.length; i++) {  
            System.out.print(a[i] + " ");  
        }  
    }  
}  
class Date {  
    int year;  
    int month;  
    int day;  
    Date(int y, int m, int d) {  
        year = y;  
        month = m;  
        day = d;  
    }  
}

面向過程-約瑟夫環
面向對象-約瑟夫環

Center
Center
Center

相關文章
相關標籤/搜索