package org.lgy.study.enumstudy; public enum SeasonEnum{ //枚举类通过如下方式调用构造器 SPRING("春天", 3),SUMMER("夏天", 6),FALL("秋天", 9),WINTER("冬天", 12); //枚举类的实例是在该类的第一行显式指定的,但依然可以定义构造器,只是构造器被强制为private权限, //因此无法通过调用构造器来显示创建实例 SeasonEnum(String name,int mouth){ this.name = name; this.mouth = mouth; } //枚举类就像普通类一样可以定义(静态)成员变量、(静态)成员方法 //枚举类的成员变量、成员方法的调用方式和普通类一样 private String name; private int mouth; public static String str = "******"; public void info(){ System.out.println(this + ",代表" + name + ",始于" + mouth + "月。"); } public static void method1(){ System.out.println("------"); } }
package org.lgy.study.enumstudy; public class EnumTest{ public void judge(SeasonEnum season){ //switch语句里的表达式可以是byte short char int String 枚举类 //当switch控制表达式使用枚举类型时,后面case表达式中的值直接使用枚举值得名字,无须添加枚举类作为限定。 switch(season) { case SPRING: System.out.println("Spring..."); break; case SUMMER: System.out.println("Summer..."); break; case FALL: System.out.println("Fall..."); break; case WINTER: System.out.println("Winter..."); break; } } public static void main(String[] args){ System.out.println(SeasonEnum.str); SeasonEnum.method1(); for(SeasonEnum s : SeasonEnum.values()){ s.info(); } } }
相关推荐
在`JDK5.0新特性 (2)——反射.doc`中,你可能会学习到如何使用`java.lang.Class`对象来获取类信息,以及如何使用`java.lang.reflect`包中的`Constructor`、`Method`和`Field`类来操作类的构造器、方法和字段。...
•在java类里只能包含Field,方法,构造器,初始化块,内部类(接口、枚举)等5种成员。 用static修饰的类成员属 于类成员,类Field既可通过类来访问,也可以通过类的对象来访问。当通过对象来访问类属性时,系统会在底...
- 构造器:`Constructor`对象允许在运行时创建类的实例,包括私有构造器。 5. **获取和设置方法(Getters & Setters)** - 反射可以自动找到类中的getter和setter方法,并调用它们来获取或设置对象的属性。 6. *...
- 构造器、方法和字段的反射:理解和使用Constructor、Method和Field类。 10. **集合框架高级应用** - 枚举Set:EnumSet的高效实现,适用于存储枚举类型数据。 - 链表Set:TreeSet的排序功能,了解比较器...
`Class`对象可以用于获取类的元数据,如类名、方法、构造器等。 2. **Constructor类**:代表类的构造器,提供了创建类实例的能力。 3. **Method类**:表示类的方法,可以用来调用方法或获取方法信息。 4. **Field...
- 构造器:无参构造器、带参数构造器和构造器链。 - 接口:实现接口,接口与多继承的关系。 3. **集合框架** - List、Set、Queue接口及其实现类:ArrayList、LinkedList、HashSet、TreeSet、PriorityQueue等。 ...
- `java.lang.reflect.Constructor`:表示类的构造器。 #### 二、动态加载实例类 在给定文件的代码示例中,我们看到一个名为`Refelection`的类,该类使用反射动态加载了一个名为`Student`的实例类。具体步骤如下:...
类的初始化 成员初始化 构造器初始化初始化顺序 数组初始化 对象的销毁 对象作用域 this 和 super 访问控制权限继承 多态组合代理 向上转型static final 接口和抽象类接口 抽象类异常 认 识 Exception 什么是 ...
在编程语境下,元数据主要指的是附加在代码元素(如类、方法、字段、构造器等)上的额外信息,这些信息描述了代码元素的用途、行为或关系。元数据能够增强代码的可读性和可维护性,同时还能支持工具和框架进行代码...
- `Constructor`和`Field`:分别代表类的构造器和字段,提供创建对象和访问字段的能力。 8. **集合泛型**: - 泛型用于限制集合中存储的数据类型,减少类型转换错误,如`List<String>`。 - 类型通配符如`?`和`...
1. **Class对象**:在Java中,每个类都有一个对应的Class对象,它包含了类的所有信息,如类名、构造器、方法、字段等。我们可以通过`Class.forName()`方法或者`Class`的`newInstance()`方法获取到Class对象。 2. **...
- **构造器(Constructor)**:创建类的实例并进行初始化的方法。 - **代码块**:包括实例代码块和静态代码块,分别在创建对象时和类加载时执行。 - **内部类**:定义在另一个类内部的类,可以是静态或非静态的,...
3. **方法引用和构造器引用**:可以直接引用类的方法或构造器,减少代码冗余。 4. **默认方法**:在接口中添加了有实现的方法,使得接口可以扩展而不会破坏已有的实现。 5. **Optional类**:用于表示可能为空的值...
2. Field、Method和Constructor:分别代表类的字段、方法和构造器,提供动态访问和调用能力。 3. Reflection API:允许在运行时检查类、接口、字段和方法的信息,实现动态代码执行。 七、异常处理 1. Exception类:...
Java反射的核心类主要包括`Class`、`Constructor`、`Method`和`Field`,这四个类分别代表类、构造器、方法和字段。 1. **Class类**:`Class`类是所有Java类的通用表示,它提供了获取任何类信息的入口。通过`Class....
2. **创建对象**:反射机制可以让我们在运行时创建任意类的实例,即使我们没有它的构造器。`Class`对象的`newInstance()`方法就是用于创建类的实例。 3. **访问私有成员**:反射可以绕过访问控制,访问私有字段和...
3. **获取构造器(Constructors)**:`Class`对象的`getConstructors()`返回所有公共构造器,`getDeclaredConstructors()`返回所有声明的构造器。`Constructor`对象可以用于创建类的新实例,通过`newInstance()`方法...
1. CONSTRUCTOR:可以在构造器上使用注解 2. FIELD:可以在字段上使用注解 3. LOCAL_VARIABLE:可以在局部变量上使用注解 4. METHOD:可以在普通方法上使用注解 5. PACKAGE:可以...
一旦有了Class对象,就可以获取类的构造器、方法、字段等信息。 1. 获取类信息: - `Class<?> clazz = Class.forName("全限定类名");` - `Class<?> clazz = obj.getClass();` 其中obj是某个对象。 2. 创建对象:...
- 构造器:用于初始化新创建的对象,与类名相同且无返回类型。 - 继承:使用`extends`关键字实现类的继承,实现代码复用。 - 多态:同一类型的引用可以指向不同子类的对象,实现接口或继承类可实现多态。 5. **...