`

枚举类:枚举类的Field、方法、构造器

 
阅读更多
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新特性 反射、枚举.rar

    在`JDK5.0新特性 (2)——反射.doc`中,你可能会学习到如何使用`java.lang.Class`对象来获取类信息,以及如何使用`java.lang.reflect`包中的`Constructor`、`Method`和`Field`类来操作类的构造器、方法和字段。...

    【05-面向对象(下)】

    •在java类里只能包含Field,方法,构造器,初始化块,内部类(接口、枚举)等5种成员。 用static修饰的类成员属 于类成员,类Field既可通过类来访问,也可以通过类的对象来访问。当通过对象来访问类属性时,系统会在底...

    Java-Reflection-Tutorial.pdf

    - 构造器:`Constructor`对象允许在运行时创建类的实例,包括私有构造器。 5. **获取和设置方法(Getters & Setters)** - 反射可以自动找到类中的getter和setter方法,并调用它们来获取或设置对象的属性。 6. *...

    java试题精选50道(经典)

    - 构造器、方法和字段的反射:理解和使用Constructor、Method和Field类。 10. **集合框架高级应用** - 枚举Set:EnumSet的高效实现,适用于存储枚举类型数据。 - 链表Set:TreeSet的排序功能,了解比较器...

    Java SE完整版精品优质课件 自学入门必看的优秀Java基础知识培训教案 第13章_Java反射机制(共44页).rar

    `Class`对象可以用于获取类的元数据,如类名、方法、构造器等。 2. **Constructor类**:代表类的构造器,提供了创建类实例的能力。 3. **Method类**:表示类的方法,可以用来调用方法或获取方法信息。 4. **Field...

    125条常见的java面试笔试题大汇总

    - 构造器:无参构造器、带参数构造器和构造器链。 - 接口:实现接口,接口与多继承的关系。 3. **集合框架** - List、Set、Queue接口及其实现类:ArrayList、LinkedList、HashSet、TreeSet、PriorityQueue等。 ...

    Java反射动态加载实例类

    - `java.lang.reflect.Constructor`:表示类的构造器。 #### 二、动态加载实例类 在给定文件的代码示例中,我们看到一个名为`Refelection`的类,该类使用反射动态加载了一个名为`Student`的实例类。具体步骤如下:...

    Java 基础核心总结 +经典算法大全.rar

    类的初始化 成员初始化 构造器初始化初始化顺序 数组初始化 对象的销毁 对象作用域 this 和 super 访问控制权限继承 多态组合代理 向上转型static final 接口和抽象类接口 抽象类异常 认 识 Exception 什么是 ...

    Annotation注解的介绍和使用

    在编程语境下,元数据主要指的是附加在代码元素(如类、方法、字段、构造器等)上的额外信息,这些信息描述了代码元素的用途、行为或关系。元数据能够增强代码的可读性和可维护性,同时还能支持工具和框架进行代码...

    java常用方法和方法大全

    - `Constructor`和`Field`:分别代表类的构造器和字段,提供创建对象和访问字段的能力。 8. **集合泛型**: - 泛型用于限制集合中存储的数据类型,减少类型转换错误,如`List<String>`。 - 类型通配符如`?`和`...

    ReflectJavaDemo

    1. **Class对象**:在Java中,每个类都有一个对应的Class对象,它包含了类的所有信息,如类名、构造器、方法、字段等。我们可以通过`Class.forName()`方法或者`Class`的`newInstance()`方法获取到Class对象。 2. **...

    java基础知识学习-个人笔记

    - **构造器(Constructor)**:创建类的实例并进行初始化的方法。 - **代码块**:包括实例代码块和静态代码块,分别在创建对象时和类加载时执行。 - **内部类**:定义在另一个类内部的类,可以是静态或非静态的,...

    JDK1.8 API 中文文档 高清完整版 CHM.zip

    3. **方法引用和构造器引用**:可以直接引用类的方法或构造器,减少代码冗余。 4. **默认方法**:在接口中添加了有实现的方法,使得接口可以扩展而不会破坏已有的实现。 5. **Optional类**:用于表示可能为空的值...

    API参考手册适用于JDK6及其以上版本

    2. Field、Method和Constructor:分别代表类的字段、方法和构造器,提供动态访问和调用能力。 3. Reflection API:允许在运行时检查类、接口、字段和方法的信息,实现动态代码执行。 七、异常处理 1. Exception类:...

    9.3 Java反射reflect

    Java反射的核心类主要包括`Class`、`Constructor`、`Method`和`Field`,这四个类分别代表类、构造器、方法和字段。 1. **Class类**:`Class`类是所有Java类的通用表示,它提供了获取任何类信息的入口。通过`Class....

    类的反射机制

    2. **创建对象**:反射机制可以让我们在运行时创建任意类的实例,即使我们没有它的构造器。`Class`对象的`newInstance()`方法就是用于创建类的实例。 3. **访问私有成员**:反射可以绕过访问控制,访问私有字段和...

    java反射实例

    3. **获取构造器(Constructors)**:`Class`对象的`getConstructors()`返回所有公共构造器,`getDeclaredConstructors()`返回所有声明的构造器。`Constructor`对象可以用于创建类的新实例,通过`newInstance()`方法...

    day021-反射和注解笔记和代码.rar

    1. CONSTRUCTOR:可以在构造器上使用注解 2. FIELD:可以在字段上使用注解 3. LOCAL_VARIABLE:可以在局部变量上使用注解 4. METHOD:可以在普通方法上使用注解 5. PACKAGE:可以...

    java反射应用详细介绍.rar

    一旦有了Class对象,就可以获取类的构造器、方法、字段等信息。 1. 获取类信息: - `Class<?> clazz = Class.forName("全限定类名");` - `Class<?> clazz = obj.getClass();` 其中obj是某个对象。 2. 创建对象:...

    java语言常用语法

    - 构造器:用于初始化新创建的对象,与类名相同且无返回类型。 - 继承:使用`extends`关键字实现类的继承,实现代码复用。 - 多态:同一类型的引用可以指向不同子类的对象,实现接口或继承类可实现多态。 5. **...

Global site tag (gtag.js) - Google Analytics