Java 是一种面向对象的编程语言,它支持多种类型的类,包括内部类、枚举类和注解类
一、内部类(Inner Class):
内部类是定义在另一个类内部的类。它可以访问外部类的成员(包括私有成员),而外部类也可以访问内部类的成员。内部类可以分为四种类型:
** 成员内部类(Member Inner Class):定义在外部类的成员位置,与成员变量、成员方法同级别。
** 局部内部类(Local Inner Class):定义在方法内部或者代码块内部的类。
** 匿名内部类(Anonymous Inner Class):没有类名的内部类,通常用于实现接口或继承类的子类。
** 静态内部类(Static Inner Class):使用 static 关键字定义的内部类,它不依赖于外部类的实例。
二、枚举类(Enum Class):
枚举类是一种特殊的类,用于表示一组固定的常量值。枚举类使用关键字 enum 定义,它们不能被继承,但可以实现接口。枚举类的实例是单例的,可以通过 EnumSet 或 EnumMap 进行操作。
public enum Color {
RED, GREEN, BLUE;
}
三、注解类(Annotation Class):
注解类是一种特殊的类,用于为其他代码元素(如类、方法、字段等)提供元数据。注解类使用关键字 @interface 定义,它们不能被实例化,但可以通过反射获取注解信息。注解类可以包含方法,这些方法用于定义注解的属性。
public @interface MyAnnotation {
String value() default "";
int priority() default 0;
}
四、总结
** 内部类是定义在另一个类内部的类,可以访问外部类的成员,并且可以根据需要定义为成员内部类、局部内部类、匿名内部类或静态内部类。
** 枚举类是一种特殊的类,用于表示一组固定的常量值。它们不能被继承,但可以实现接口。
** 注解类是一种特殊的类,用于为其他代码元素提供元数据。它们不能被实例化,但可以通过反射获取注解信息。