(1) 枚举类不能继承其他类
java不支持多继承.
所有的枚举类都继承自java.lang.Enum类
(2) 使用接口组织枚举
public interface Drink { public static enum Juice implements Drink { ORANGE, APPLE, TOMATO, GUAVA; } public static enum Cocktail implements Drink { GIN, VODKA, RUM, TEQUILA, WHISKY, BRANDY, LIQUEUR; } }
(3) 枚举的抽象方法
public static enum Sign { GGG("ggg") { @Override public void hello() { System.out.println(getText()); } }, HHH("ero") { @Override public void hello() { System.out.println(getText()); } } ; private String text; private Sign(String txt) { this.text = txt; } protected String getText() { return text; } public abstract void hello(); }
(4) EnumSet 与 EnumMap
// 使用EnumSet遍历枚举 EnumSet<Juice> es = EnumSet.allOf(Juice.class); for (Iterator<Juice> it = es.iterator(); it.hasNext(); ) { System.out.println(it.next()); } // EnumMap在创建时需指定一个枚举类 EnumMap<Cocktail, String> em = new EnumMap<Cocktail, String>(Cocktail.class); // EnumMap的key不能为null, 且必须是枚举的一个值 em.put(Cocktail.GIN, "琴酒"); em.put(Cocktail.VODKA, "伏特加"); em.put(Cocktail.RUM, "莱姆"); // EnumMap使用数组操作存取 System.out.println(em);
相关推荐
在Java项目中,各种元素如类、接口、枚举类型、注解类型、方法和字段等,它们的访问修饰符(如public、private、protected)决定了它们在包内和包外的可见性。Eclipse通过不同的图标来区分它们,例如,使用public修饰...
1. 创建型模式:单例模式、工厂模式(简单工厂、抽象工厂)、建造者模式、原型模式和枚举型单例。这些模式主要关注对象的创建过程,使得代码结构更加清晰,易于管理和测试。 2. 结构型模式:适配器模式、装饰器模式...
在Java中,通常通过双重检查锁定、静态内部类或者枚举来实现单例。 2. **工厂模式**:提供一个接口来创建对象,但让子类决定实例化哪个类。Java中的`AbstractFactory`和`SimpleFactory`都是工厂模式的例子。 3. **...
在Java中,我们可以使用枚举、双重检查锁定或者静态内部类来实现单例。 2. 工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。Java中的`java.lang.Class`类的`newInstance()`方法就是工厂方法...
在Java中,可以通过双重检查锁定(Double-Checked Locking)或枚举方式实现单例,避免多线程环境下的并发问题。 2. **工厂模式**:提供一个接口来创建对象,但让子类决定实例化哪一个类。Java中的`AbstractFactory`...
- 枚举:枚举的特性和用法,枚举与单例模式的关系。 3. **并发编程** - 并发工具类:Semaphore、CyclicBarrier、CountDownLatch、ExecutorService等的使用。 - volatile和synchronized的区别与应用场景。 - ...
在Java中,可以通过静态内部类、枚举或者双重检查锁定等方式实现单例模式。其中,枚举方式实现的单例既简单又高效,能够自动支持序列化机制,防止反序列化时重新创建新的实例。 #### 3. 适配器模式 适配器模式是一...
2. 枚举:掌握枚举的定义和使用,以及枚举的关联方法。 3. 反射:理解反射机制,如何动态获取类信息,创建对象,调用方法等。 4. 注解:了解注解的定义,元注解,自定义注解的使用,以及注解在编译时和运行时的作用...
在Java中,可以使用枚举、双重检查锁定(DCL)或静态内部类等方式实现。 2. **工厂模式(Factory)**:提供一个接口来创建对象,但让子类决定实例化哪个类。Java中的工厂方法通常通过抽象工厂类或接口来实现。 3. ...
在Java中,可以使用枚举、双重检查锁定等方式实现。 2. **工厂模式**:为创建对象提供接口,让客户端避免与具体类直接交互,增加代码的灵活性。简单工厂、工厂方法和抽象工厂模式是其三种主要形式。 3. **抽象工厂...
在这个"7.1前的java代码示例整理"中,我们可以期待找到多种设计模式的实现,以及枚举类和异常处理的实例。 首先,让我们深入了解一下设计模式。设计模式可以分为三类:创建型模式(如单例、工厂方法、抽象工厂、...
6. 枚举:枚举类型的使用,以及与常量的对比。 三、集合框架 1. List、Set、Map接口:理解它们的特点,以及各自常用的实现类如ArrayList、LinkedList、HashSet、HashMap等。 2. 集合操作:掌握添加、删除、遍历元素...
例如,Java的枚举类型可以方便地实现单例模式,而动态代理则可以简化代理模式的实现。 通过阅读《设计模式-Java语言中的应用》,读者不仅可以掌握设计模式的基本概念和原理,还能学习到如何在实际项目中选择合适的...
- 枚举单例模式:利用Java枚举类型实现单例,既简单又安全。 2. **结构型模式**: - 适配器模式:将两个不兼容的接口转换为兼容接口,使原有接口与新接口可以协同工作。 - 桥接模式:将抽象部分与它的实现部分...
13. **枚举**:Java的枚举类型用于定义有限数量的常量,可以拥有方法和实现接口,比传统的常量定义更安全。 14. **Lambda表达式**:Java 8引入的Lambda表达式简化了函数式编程,使得代码更加简洁。 15. **注解...
在Java中,可以使用静态内部类、枚举或双重检查锁定等方法实现。 2. **工厂模式(Factory Method)**:定义一个创建对象的接口,让子类决定实例化哪一个类。在Java中,通过抽象工厂类和具体工厂实现类来体现这一...
**单例模式**、**工厂模式**、**抽象工厂模式**、**建造者模式**、**原型模式**、**适配器模式**、**装饰器模式**、**代理模式**、**桥接模式*...**、**中介者模式**、**备忘录模式**、**状态模式**、**责任链模式**...
在Java中,通常使用双重检查锁定(DCL)或者枚举来实现单例。 2. **工厂方法模式**:定义一个用于创建对象的接口,但让子类决定实例化哪一个类。工厂方法让类的实例化推迟到子类。 3. **抽象工厂模式**:提供一个...
3. 行为型模式:关注对象间的通信和职责分配,包括责任链模式(Chain of Responsibility)、命令模式(Command)、解释器模式(Interpreter)、迭代器模式(Iterator)、中介者模式(Mediator)、备忘录模式...
在Java中,可以使用双重检查锁定、静态内部类或者枚举实现单例。 2. 工厂方法模式:定义一个创建对象的接口,但让子类决定实例化哪一个类。Java的`java.sql.DriverManager`就是工厂方法模式的一个实例。 3. 观察者...