它确保一个类只有一个实例,并提供一个全局访问点,来访问该实例。
单例模式解决了,全局使用的类,频繁被创建和销毁的问题,节省了系统开销。
常见的应用场景,包括Windows的任务管理器、回收站、网站的计数器、应用程序的日志应用、数据库连接池的设计,以及多线程的线程池的设计等。
3)观察者模式:
观察者模式是一种行为型设计模式。
它定义了一种一对多的依赖关系,让多个观察者对象,同时监听某一个主题对象。
当主题对象状态发生改变时,它的所有依赖者(观察者)都会收到通知并自动更新。
观察者模式,适用于关联行为场景…
如用户关注某个商品的价格,当商品降价时自动通知用户等等。
以上这些设计模式,在软件开发中广泛应用。
它们可以提高代码的可维护性、可扩展性和可重用性,使软件更加灵活和易于管理。
…
3、在什么情况下,你会使用这些设计模式?
在Java开发中,使用设计模式的场景,多种多样…
具体取决于项目的需求、代码的可维护性、可扩展性,以及团队的协作方式等因素。
以下是使用Java的7种常见设计模式的情况:
1)单例模式:
当需要确保一个类只有一个实例,并提供全局访问点时…
如管理配置信息、数据库连接池等。
2)工厂模式:
当需要解耦对象的创建与使用,或者需要动态地创建对象时…
如根据配置文件,或用户输入创建不同的对象。
3)适配器模式:
当需要将一个类的接口,转换为客户端所期望的另一种接口时…
使原本不兼容的类,可以合作。
4)观察者模式:
当需要在对象之间,建立一对多的依赖关系…
以便当一个对象状态改变时,通知其所有依赖者。
5)策略模式:
当需要根据不同的策略,执行某个行为…
并且这些策略,可以动态地改变时,如排序算法的选择。
6)模板方法模式:
当需要定义一个操作的算法骨架,而将一些步骤,延迟到子类中实现时。
7)迭代器模式:
当需要遍历一个聚合对象,而又不想暴露其内部表示时。
此外…
还有装饰者模式、代理模式、组合模式、状态模式、职责链模式、桥接模式、原型模式、建造者模式、外观模式、享元模式、访问者模式等等…
它们各自适用于不同的场景和需求。
总结:
设计模式,是为了解决在软件设计中,经常遇到的问题,而提出的最佳实践。
它们并不是必须使用的,但在很多情况下,使用设计模式可以使代码更加清晰、易于维护和扩展。
所以,在选择使用哪种设计模式时,需要根据项目的实际情况,以及需求进行权衡和选择。
……
以上,就是今天的分享啦!
希望,对你有那么一点点、一丢丢、一戳戳地帮助哈~
所以哩…
评论、收藏、关注一键三连可好?
推荐票、月票、打赏,好伐?!
嘻嘻…