Java 设计模式练习题及答案
在学习Java设计模式时,练习题是非常重要的一部分。通过练习题的实践,可以更好地理解和应用设计模式,提升自己的编程能力。本文将介绍一些Java设计模式练习题,并提供相应的答案,希望能对读者在设计模式的学习和实践中有所帮助。
一、题目一:单例模式——懒汉式实现
java中常用的设计模式有哪些
问题描述:请编写一个线程安全的懒汉式单例模式。
解答示例:
```java
public class Singleton {
    private static Singleton instance;
    private Singleton() {}
    public static synchronized Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}
```
二、题目二:工厂模式——简单工厂实现
问题描述:请使用简单工厂模式实现一个计算器,支持加减乘除四种运算。
解答示例:
```java
public class CalculatorFactory {
    public static Calculator createCalculator(String operator) {
        Calculator calculator = null;
        switch (operator) {
            case "+":
                calculator = new AddCalculator();
                break;
            case "-":
                calculator = new SubtractCalculator();
                break;
            case "*":
                calculator = new MultiplyCalculator();
                break;
            case "/":
                calculator = new DivideCalculator();
                break;
        }
        return calculator;
    }
}
public interface Calculator {
    double calculate(double num1, double num2);
}
public class AddCalculator implements Calculator {
    @Override
    public double calculate(double num1, double num2) {
        return num1 + num2;
    }
}
public class SubtractCalculator implements Calculator {
    @Override
    public double calculate(double num1, double num2) {
        return num1 - num2;
    }
}
// MultiplyCalculator和DivideCalculator类似,省略代码
// 使用示例
Calculator calculator = ateCalculator("+");
double result = calculator.calculate(2, 3); // 结果为5

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。