🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[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();|