设计模式运用不当问题:Java Singleton 和 Single Responsibility Principle 误用示例

原创 ╰+攻爆jí腚メ 2024-09-20 02:03 147阅读 0赞

Singleton和Single Responsibility Principle(SRP)是两种常见的设计模式,如果误用可能会导致代码难以维护和理解。以下是具体的示例:

  1. Singleton误用:

    1. // 错误的Singleton实现
    2. public class Singleton {
    3. private static Singleton instance = new Singleton(); // 单例内部的实例化
    4. // 错误的方法,试图获取唯一的实例
    5. public static Singleton getInstance() {
    6. return instance;
    7. }
    8. }

    这样的代码不仅违背了单例模式的初衷(保证类只有一个实例),还使得代码难以理解和维护。

  2. Single Responsibility Principle (SRP) 误用:

    1. // 错误的类,同时负责多种功能
    2. public class MultiFunctionalClass {
    3. private List<String> names; // 名字列表
    4. private int age; // 年龄
    5. // 错误的方法,用于添加新的名字
    6. public void addName(String name) {
    7. names.add(name);
    8. }
    9. // 错误方法,用于获取当前的年龄
    10. public int getAge() {
    11. return age;
    12. }
    13. }

    这样的类违反了SRP原则,即每个类都应该有一个单一的责任。在上述例子中,MultiFunctionalClass负责添加和获取名字等多项功能,违背了单一职责的原则。

综上所述,对于设计模式的运用,应充分理解其原则和应用场景,并避免因误用而导致的问题。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,147人围观)

还没有评论,来说两句吧...

相关阅读