- 面向對象的三大特性: 封裝性、多態性、繼承性。
- Java語言特色: 魯棒、自動垃圾回收、跨平臺、多線程、面向對象、簡單性、解釋執行。
- Java的三大版本: Java SE、Java EE、Java ME。
- 第一個Java程序:
- javac 文件名.java。
- java(類名) (無java後綴名)。
- Java源文件編譯成class字節碼文件 (javac)
- class文件解釋成機器碼並執行 (jvm)
- JDK JRE JVM
- JDK=Java Development Kit Java開發工具包 ========》開發
- JRE=Java Runtime Environment Java運行時環境 =======》運行
- JVM=Java Virtual Machine Java虛擬機=============》運行
- JDK包含JRE\JRE能夠獨立存在\JRE包含JVM
類的基本結構
-
類的聲明形式java
- 【訪問權限修飾符】【修飾符】class 類名{【類體】}
- 1public static class InnerClass{ }
- 2public class HelloWorld { }
- 3class HelloMyLittleWorld { }
- 訪問權限修飾符: public protected (defualt) private (從大到小的順序)
-
屬性的聲明方式正則表達式
- 1【訪問權限修飾符】 【修飾符】 數據類型 屬性名【=初值】
- 2String name;
- 3//public 訪問權限修飾符
- 4// static final 修飾符
- 5// String 數據類型
- 6// MAX_SALARY 屬性名
- 7//=20000000 初值
- public static final String MAX_SALARY=2000000;
-
方法的聲明方式多線程
-
- 1【訪問權限修飾符】【修飾符】 返回值類型 方法名(形式參數列表){}
- 2public static void main(String[] args){
- 3【return ;】
}
-
方法重載jvm
- 方法名必須相同
- 參數不一樣
- 順序不一樣 (變量名不影響效果,前提,參數的類型要不一樣)
- 類型不一樣
- 參數個數不一樣
- 在同一做用域
-
構造方法的聲明方式工具
-
- 1【訪問權限修飾符】 類名 (形式參數列表) {方法體}
- 2public Dog(String name){
- 3this.name=name;
- }
-
建立對象spa
- 建立了兩個實體
- 對象引用變量,存放在棧內存區(stack)中
- 對象自己,存放在堆(heap)內存區中
- 對象引用變量存儲的是對象自己的虛地址,經過對象引用變量能夠操縱對象自己
-
建立對象的過程線程
- 加載 類 到 內存
- 初始化屬性,存在堆中
- 調用構造器建立實例,存在堆中
- 在棧中建立引用變量,並把對象的虛地址賦給棧中的變量
Java簡單語法
簡單規則
- 分號
- 塊
- 關鍵字
- public static void new class package
- private protected this return
- if else switch for while do case default break
- byte short int long float double boolean char
- 空白
- 花括號
- 註釋
- 單行註釋 //
- 多行註釋 /* */
- 文檔註釋/* / javadoc
標識符的規則
- 必須由字母、數字、下劃線、$組成
- 數字不能爲開頭
- 不能爲系統關鍵字
- 區分大小寫
- 不能用#%@&等符號
- 遵循必定規則
- 類名 首字母 大寫,用第二個單詞的首字母大寫來分詞 駝峯式命名法
- 變量名、方法名、屬性名 首字母小寫,用第二個單詞的首字母大寫來分詞 駝峯式命名法
- 常量(static final) 所有大寫,用下劃線分詞,注意賦初值
- 長度不限
- 中間不能有空格
- 在某個範圍內是惟一的
Java表達式
- 逗號表達式
- 問號表達式:三元運算符
- 邏輯表達式
- 正則表達式
訪問權限修飾符
-
包的概念 code
- 將邏輯相關的類組織在同一個包內,控制訪問權限
- package
- import
-
訪問權限修飾符及其權限
私有權限 |
同包權限 |
子類可訪問權限 |
公開權限 |
private |
√ |
|
|
(default) |
√ |
√ |
|
protected |
√ |
√ |
√ |
public |
√ |
√ |
√ |
- 屬性的封裝方式
- 將一組邏輯相關的屬性方法封裝在類中,經過訪問權限修飾符來隱藏內部細節,公開訪問的接口的技術稱爲類的封裝技術
- 隱藏內部細節,保護其不受外部影響,方便內部的修改
- 同時下降外部使用的複雜度
- 屬性用private隱藏,方法用public公開
- setter getter的寫法
- private屬性 grade success(boolean)
- getter : public 數據類型 get屬性名(){return 屬性名;} getGrade
- boolean getter : public boolean is屬性名(){return 屬性名;} isSuccess
- setter: public void set屬性名(數據類型 屬性名){this.屬性名=屬性名;} setSuccess
java
public class Cat {
private String name;
private int age;
private boolean full;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isFull() {
return full;
}
public void setFull(boolean full) {
this.full = full;
}
}
系統關鍵字
- 1類相關:
- 2 class interface enum extends implements return package import void this new super instanceof
- 3- 訪問權限修飾符
- 4 protected public private
- 5- 流程
- 6 for if else switch case default break continue do while
- 7 static
- 8- 八種基本數據類型
- 9 byte short int long float double char boolean
- 10- 修飾符
- 11 static final abstract synchronized native volatile transient
- 12- 異常相關
- 13- try catch finally throw throws
- 14- 其餘
- 15 assert
- 16null