[TOC]
> Java 1.8版本
## 基本常用關鍵字
| 關鍵字 | 含義 |語法邊界?? |
|:--|:--|:--|
| abstract | 用于定義抽象類和抽象方法。 | abstract class MyClass {}abstract void myMethod();|
|assert|用于測試代碼中的布爾表達式是否為真。|assert booleanExpression;assert booleanExpression : errorMessage;|
|boolean|用于聲明一個布爾類型的變量或返回值。|boolean flag;public boolean myMethod() {}|?
|break|用于跳出循環或switch語句。|break;|
|byte|用于聲明一個字節類型的變量或返回值。|byte b;public byte myMethod() {}|
|case|用于在switch語句中定義一個分支。|case constant:|
|catch|用于捕獲異常并處理它們。|try {} catch (ExceptionType e) {}try {} catch (ExceptionType1 e1) {} catch (ExceptionType2 e2) {}|
|char|用于聲明一個字符類型的變量或返回值。|char c;public char myMethod() {}|
|class|用于定義一個類。|class MyClass {}|
|continue|用于跳過當前循環中的剩余代碼并進入下一次循環。|continue;|
|default|用于switch語句中定義默認分支。|default:|
|do|用于定義一個do-while循環。|do {} while (booleanExpression);|
|double|用于聲明一個雙精度浮點數類型的變量或返回值。|double d;public double myMethod() {}|
|else|用于定義在if語句條件不滿足時要執行的代碼塊。|if (booleanExpression) {} else {}|?
|enum|用于定義一個枚舉類型。|enum MyEnum {}|
|extends|用于擴展一個類。|class MyClass extends ParentClass {}|
|final|用于聲明一個常量或使一個類或方法不可繼承或重寫。|常量:final int MY\_CONSTANT = 100;類:final class MyClass {}方法:final void myMethod() {}|
|finally|用于在try-catch塊中定義一個代碼塊,無論是否發生異常都會執行。|try {} catch (ExceptionType e) {} finally {}|
|float|用于聲明一個單精度浮點數類型的變量或返回值。|float f;public float myMethod() {}|
|for|用于定義一個for循環。|for (initialization; booleanExpression; update) {}|
|if|用于定義一個條件語句。|if (booleanExpression) {}|
|implements|用于實現一個接口。|class MyClass implements MyInterface {}|?
|import|用于導入其他包中的類。|import package1.package2.Class;|
|instanceof|用于測試一個對象是否是某個類的實例。|if (object instanceof MyClass) {}|
|int|用于聲明一個整數類型的變量或返回值。|int i;public int myMethod() {}|
|interface|用于定義一個接口。|interface MyInterface {}|
|long|用于聲明一個長整數類型的變量或返回值。|long l;public long myMethod() {}|
|native|用于聲明一個本地方法。|public native void myMethod();|
|new|用于創建一個新的對象。|MyClass obj = new MyClass();|?
|package|用于聲明一個包。|package mypackage;|
|private|用于聲明一個私有的變量或方法,只能在類內部訪問。|private int i;private void myMethod() {}|
|protected|用于聲明一個受保護的變量或方法,只能在同一包中或子類中訪問。|protected int i;protected void myMethod() {}|
|public|用于聲明一個公共的變量或方法,可以在任何地方訪問。|public int i;public void myMethod() {}|
|return|用于從方法中返回一個值。|return value;|
|short|用于聲明一個短整數類型的變量或返回值。|short s;public short myMethod() {}|
|static|用于聲明一個靜態變量或方法,它們屬于類而不是對象。|靜態變量:static int i;靜態方法:static void myMethod() {}|
|strictfp|用于聲明一個精確浮點數運算。|strictfp float myMethod() {}|
|super|用于訪問父類中的變量或方法。|super.variableName;super.methodName();|
|switch|用于定義一個switch語句。|switch (variable) {}|
|synchronized|用于在多線程編程中同步訪問共享資源。|synchronized void myMethod() {}synchronized (object) {}|
|this|用于訪問當前對象。|this.variableName;this.methodName();|??
|throw|用于拋出一個異常。|throw new ExceptionType();throw myException;|?
|throws|用于聲明一個方法可能拋出的異常。|public void myMethod() throws ExceptionType {}|
|transient|用于聲明一個變量不需要被序列化。|transient int i;|?
|try|用于定義一個try-catch塊。|try {} catch (ExceptionType e) {}|
|void|用于聲明一個沒有返回值的方法。|public void myMethod() {}|
|volatile|用于聲明一個變量是易變的,需要在多線程環境下同步訪問。|volatile int i;|
|while|用于定義一個while循環。|while (booleanExpression) {}|
# 1. 面向對象關鍵詞:
*****
|關鍵詞|說明|示例|應用場景|
|:--|:--|:--|:--|
|class|定義一個類|public class Person {}|描述對象的屬性和行為|
|interface|定義一個接口|public interface Runnable {}|定義標準,實現多繼承|
|extends|表示繼承,子類繼承父類|public class Student extends Person {}|實現繼承,覆蓋方法|
|implements|表示實現,實現接口|public class Runner implements Runnable {}|實現標準,獲得接口方法|
|new|創建對象實例|Person p = new Person();|實例化抽象數據類型|
|this|指向當前對象實例|this.name = "John"|區分局部變量和實例變量|
|super|指向父類對象實例|`super.printName();|訪問父類方法和變量|
|instanceof|判斷對象是否是某個類的實例|p instanceof Person|判斷對象類型|
|abstract|定義抽象方法和抽象類|public abstract void run();|定義標準,實現部分方法|
|final|定義最終方法、類和變量|public final void printName() {}|防止被繼承或修改|
|static|定義靜態方法和變量|public static final double PI = 3.14;|屬于類不屬于實例|
|protected|保護的,子類和同包可訪問|protected String name;|包權限|
|private|私有的,只有當前類可訪問|private int age;|對外隱藏信息|
|public|公有的,所有類都可訪問|public class Person {}|對外開放|
|override|注解,表示子類方法覆蓋父類方法|@override public void printName() {}|編譯時檢查覆蓋|
|package|定義包,將類分組|package com.xyz.model;|管理類的可見性|
|import|導入其他包的類|import java.util.List;|使用其他包的類| ?
上表列出了Java中用于面向對象編程的主要關鍵詞,包括:\- 定義類和接口:class、interface?
\- 繼承和實現:extends、implements
\- 創建對象:new?
\- 訪問控制:public、protected、private?
\- 綁定:this、super?
\- 抽象類和方法:abstract
\-? final類、方法和變量:final?
\- 靜態方法和變量:static
\- 同名覆蓋:override
# 2. 集合類關鍵詞
*****
## 2.1. Java 中的Collection接口有以下主要方法:
### 2.1.1. 添加元素:
- add(E e):添加元素,如果添加成功返回true,否則拋出異常。
- addAll(Collection c):添加給定集合中的所有元素,添加成功返回true,否則返回false。
### 2.1.2. 移除元素:
- remove(Object o):移除給定元素,如果存在則返回true,否則返回false。
- removeAll(Collection c):移除集合中與給定集合相同的所有元素,如果存在這樣的元素則返回true,否則返回false。
- retainAll(Collection c):僅保留集合中與給定集合相同的元素,如果發生變化則返回true,否則返回false。
- clear():清空整個集合。
### 2.1.3. 判斷方法:
- contains(Object o):判斷集合是否包含給定元素,如果包含則返回true,否則返回false。
- containsAll(Collection c): 判斷集合是否包含給定集合中的所有元素,如果全部包含則返回true,否則返回false。
- isEmpty():判斷集合是否為空,空則返回true,非空則返回false。
### 2.1.4. 獲取信息方法:
- size():返回集合中的元素個數。
- iterator():返回集合對應的迭代器,用以遍歷集合元素。
這些方法控制著集合的結構變化,包括:
- 元素的添加、刪除與清空
- 集合屬性的判斷
- 元素個數與遍歷方式的獲取
## 2.2. Collection 接口列表
|關鍵詞|說明|應用場景| 示例|?
|:--|:--|:--|:--|
|List|列表,有序可重復|需要根據索引訪問元素|`List list = new ArrayList<>();|
|Set|集合,無序不可重復|需要判斷唯一性|`Set set = new HashSet<>();|?
|Queue|隊列,先進先出|需要先進先出的訪問順序|`Queue queue = new LinkedList<>();|?
|Deque|雙端隊列,兩端添加和移除元素|需要兩端訪問元素|`Deque deque = ArrayDeque<>();|
|Map|映射,key-value鍵值對|需要通過鍵訪問值|`Map map = new HashMap<>();|
|SortedMap|鍵值對排序后的Map|需要有序的鍵值對|`SortedMap map = new TreeMap<>();|
|NavigableMap|可導航的Map|需要導航到第一個/最后一個鍵大于/小于某鍵的映射|`NavigableMap map = new TreeMap<>();|?
|Iterator|迭代器,遍歷集合元素|需要遍歷集合元素|`Iterator iter = list.iterator();|?
|Enumeration|枚舉,已過時的迭代器|兼容舊版的遍歷元素方式|`Enumeration e = ...|?
|add()|添加元素|-|`list.add(1);|?
|remove()|移除元素| -|`set.remove("a");|
|contains()|查找是否包含元素| -|`list.contains(1);|??
|size()|獲取元素數量| -|`set.size();|?
|isEmpty()|判斷是否為空| -|`map.isEmpty();|?
|clear()|清空所有元素| -|`queue.clear();|?
|get()|獲取指定位置元素| -|`list.get(0);|
|keySet()|獲取Map中的所有key| -|`Set keys = map.keySet();|?
|values()|獲取Map中的所有value| -|`Collection values = map.values();|??
|entrySet()|獲取Map中的所有鍵值對| -|`Set> entrySet = map.entrySet();|
|higherEntry()|獲取大于給定key的最小鍵值對|需要從Map中獲取相鄰鍵值對|`Entry higher = map.higherEntry("c");|?
|lowerEntry()|獲取小于給定key的最大鍵值對|需要從Map中獲取相鄰鍵值對|`Entry lower = map.lowerEntry("c");|
|poll()|移除元素并返回(隊列)|需要從隊列頭部獲取并移除元素|`Integer n = queue.poll();|
|peek()|返回隊列頭元素(隊列)|需要從隊列頭部獲取元素|`Integer first = queue.peek();|?
|offer()|添加元素(隊列)|需要向隊列尾部添加元素|`queue.offer(1);|?
|push()|添加元素(棧)|需要向棧頂添加元素|`stack.push(2);|
|pop()|移除元素并返回(棧)|需要從棧頂獲取并移除元素|`Integer n = stack.pop();|
- 系統設計
- 需求分析
- 概要設計
- 詳細設計
- 邏輯模型設計
- 物理模型設計
- 產品設計
- 數據驅動產品設計
- 首頁
- 邏輯理解
- 微服務架構的關系數據庫優化
- Java基礎架構
- 編程范式
- 面向對象編程【模擬現實】
- 泛型編程【參數化】
- 函數式編程
- 響應式編程【異步流】
- 并發編程【多線程】
- 面向切面編程【代碼復用解耦】
- 聲明式編程【注解和配置】
- 函數響應式編程
- 語法基礎
- 包、接口、類、對象和切面案例代碼
- Springboot按以下步驟面向切面設計程序
- 關鍵詞
- 內部類、匿名類
- 數組、字符串、I/O
- 常用API
- 并發包
- XML
- Maven 包管理
- Pom.xml
- 技術框架
- SpringBoot
- 項目文件目錄
- Vue
- Vue項目文件目錄
- 遠程組件
- 敏捷開發前端應用
- Pinia Store
- Vite
- Composition API
- uniapp
- 本地方法JNI
- 腳本機制
- 編譯器API
- 注釋
- 源碼級注釋
- Javadoc
- 安全
- Swing和圖形化編程
- 國際化
- 精實或精益
- 精實軟件數據庫設計
- 精實的原理與方法
- 項目
- 零售軟件
- 擴展
- 1001_docker 示例
- 1002_Docker 常用命令
- 1003_微服務
- 1004_微服務數據模型范式
- 1005_數據模型
- 1006_springCloud
- AI 流程圖生成
- Wordpress_6
- Woocommerce_7
- WooCommerce常用的API和幫助函數
- WooCommerce的鉤子和過濾器
- REST API
- 數據庫API
- 模板系統
- 數據模型
- 1.Woo主題開發流程
- Filter
- Hook
- 可視編輯區域的函數工具
- 渲染字段函數
- 類庫和框架
- TDD 通過測試來驅動開發
- 編程范式對WordPress開發
- WordPress和WooCommerce的核心代碼類庫組成
- 數據庫修改
- 1.WP主題開發流程與時間規劃
- moho
- Note 1
- 基礎命令