Java开发:常用关键字
1. 类相关的关键字
(1)class
- 作用:用于定义类。
- 示例:
class MyClass { // 类内容 }
(2)public
- 作用:类可以被任何其他类访问。
- 示例:
public class MyClass { // 类内容 }
(3)abstract
- 作用:类不能被实例化,通常用于定义抽象类。
- 示例:
public abstract class Animal { public abstract void makeSound(); // 抽象方法 }
(4)final
- 作用:类不能被继承。
- 示例:
public final class MyFinalClass { // 类内容 }
(5)extends
- 作用:用于类继承另一个类。
- 示例:
class Child extends Parent { // 类内容 }
(6)implements
- 作用:用于类实现接口。
- 示例:
class MyClass implements MyInterface { // 类内容 }
(7)sealed
(Java 17 引入)
- 作用:类可以被继承,但只能被指定的类继承。
- 示例:
public sealed class Shape permits Circle, Square { // 类内容 } public final class Circle extends Shape { // 类内容 } public final class Square extends Shape { // 类内容 }
2. 变量相关的关键字
(1)public
- 作用:变量可以被任何其他类访问。
- 示例:
public int myVar = 10;
(2)protected
- 作用:变量可以在同一个类、同一个包以及子类中访问。
- 示例:
protected int myVar = 20;
(3)private
- 作用:变量只能在同一个类中访问。
- 示例:
private int myVar = 30;
(4)static
- 作用:变量属于类级别,而不是实例级别。所有实例共享同一个静态变量。
- 示例:
public static int myVar = 40;
(5)final
- 作用:变量不能被重新赋值(常量)。
- 示例:
public final int myVar = 50;
(6)volatile
- 作用:变量在多线程环境下可见,确保线程安全。
- 示例:
public volatile int myVar = 60;
(7)transient
- 作用:变量不会被序列化。
- 示例:
public transient int myVar = 70;
3. 方法相关的关键字
(1)public
- 作用:方法可以被任何其他类访问。
- 示例:
public void myMethod() { System.out.println("This is a public method."); }
(2)protected
- 作用:方法可以在同一个类、同一个包以及子类中访问。
- 示例:
protected void myMethod() { System.out.println("This is a protected method."); }
(3)private
- 作用:方法只能在同一个类中访问。
- 示例:
private void myMethod() { System.out.println("This is a private method."); }
(4)static
- 作用:方法属于类级别,而不是实例级别。可以通过类名直接调用。
- 示例:
public static void myMethod() { System.out.println("This is a static method."); }
(5)final
- 作用:方法不能被重写。
- 示例:
public final void myMethod() { System.out.println("This is a final method."); }
(6)abstract
- 作用:方法没有方法体,必须由子类实现。
- 示例:
public abstract void myMethod();
(7)synchronized
- 作用:方法在同一时间只能被一个线程访问。
- 示例:
public synchronized void myMethod() { System.out.println("This is a synchronized method."); }
(8)native
- 作用:方法由本地代码(如 C/C++)实现。
- 示例:
public native void myMethod();
4. 接口相关的关键字
(1)interface
- 作用:用于定义接口。
- 示例:
interface MyInterface { void myMethod(); }
(2)default
(Java 8 引入)
- 作用:用于在接口中定义默认方法。
- 示例:
interface MyInterface { default void myMethod() { System.out.println("This is a default method."); } }
(3)static
(Java 8 引入)
- 作用:用于在接口中定义静态方法。
- 示例:
interface MyInterface { static void myMethod() { System.out.println("This is a static method."); } }
(4)private
(Java 9 引入)
- 作用:用于在接口中定义私有方法。
- 示例:
interface MyInterface { private void myMethod() { System.out.println("This is a private method."); } }
(5)extends
- 作用:用于接口继承其他接口。
- 示例:
interface MyInterface extends AnotherInterface { // 接口内容 }
(6)@FunctionalInterface
(Java 8 引入)
- 作用:用于标记函数式接口。
- 示例:
@FunctionalInterface interface MyFunctionalInterface { void myMethod(); }
5. 总结
- 类:
class
、public
、abstract
、final
、extends
、implements
等关键字用于定义类的行为和特性。 - 变量:
public
、protected
、private
、static
、final
、volatile
等关键字用于定义变量的访问权限和行为。 - 方法:
public
、protected
、private
、static
、final
、abstract
等关键字用于定义方法的访问权限和行为。 - 接口:
interface
、default
、static
、private
、extends
、@FunctionalInterface
等关键字用于定义接口的行为和特性。