1、单例模式(静态模式)
使用原则:使内存中保持一个对象,写法如下:
- public class SingleObj{
- private static final SingleObj obj=new SingleObj();
- public static SingleObj getObj(){
- return obj;
- }
- private SingleObj{
- }
- }
2、工厂模式
使用原则:提供实例对象的引用,写法如下:
- public class Demo{
- public static void main(String[] args){
- Factory f=new Factory();
- f.getInstance().getString();
- }
- }
- public class Factory{
- public DemoDao getInstance(){
- DemoDao instance=new DemoDaoImp();
- return instance;
- }
- }
- interface DemoDao{
- public String getString();
- }
- public DemoDaoImp Implements DemoDao{
- public String getString(){
- System.out.println("工厂模式");
- };
- }
3、代理设计模式
使用原则:就像秘书和老板的关系,秘书负责日常事务的处理,比如老板行程安排、会议资料的整理,老板负责执行,比如开始行程 、开会宣布工作
- interface NormalTask{
- public void journey();
- }
- public class Boss implements NormalTask{
- public void journey(){
- System.out.println("开始行程");//老板开始行程
- };
- }
- public class Secretary implements NormalTask{
- private NormalTask task;
- public Secretary(NormalTask task){
- this.task=task;
- }
- public void planJourney(){//秘书需要做额外的安排工作
- System.out.println("安排行程");
- };
- public void journey(){
- this.planJournery();//判读是否安排好了行程,如果安排好了,就可以开始行程了
- this.task.journery();//通知老板可以开始行程了
- };
- }
- public class Demo{
- public static void main(String args[]){
- NormalTask task=new Secretary(new Boss());
- task.journery();//老板在秘书的安排下开始行程
- }
- }
4、观察者设计模式
5、适配器模式
当前文章价值8.86元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章
来源:每日教程,
每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
一键缓存清理工具
要实现这样一个功能,我们需要创建一个Tkinter GUI,其中包含复选框让用户选择常见的垃圾目录,一个文本框供用户输入自定义目录,以及一个按钮来...
什么是避孕?
避孕是应用科学手段使妇女暂时不受孕。主要控制生殖过程中的三个环节:
1.抑制精子与卵子产生;
2.阻止精子与卵子结合;
3.使子宫环境不利于精子...
Android项目使用到的正则表达式详细介绍和示例说明
在Android项目中,正则表达式主要用于字符串的验证和匹配,可以帮助开发者实现复杂的字符串格式验证功能,例如校验用户输入的电话号码、邮箱地址...
C#工具类SqlSugarClient,查询sqlServer数据库详细使用实例
SqlSugar是一个轻量级的.NET ORM框架,它支持包括SQL Server在内的多种数据库。下面是一个使用SqlSugarClient查询SQL Server数据库的基本示例。...
013-一个具体例子说明使用docker部署python项目完整过程
使用Docker部署Python项目是一个标准化且可复用的过程,这可以确保无论在哪种环境下运行,项目都能有一致的表现。下面是一个具体的步骤指南,展...
实例说明kotlin关键字@JvmOverloads和apply的用法
在 Kotlin 中,@JvmOverloads 和 apply 是两个非常有用的关键字和作用域函数,它们可以帮助我们编写更简洁、更符合 Java 开发者习惯的代码。
@Jv...
生活杂谈之阿里云免费虚拟主机申请过程详解
对于我来说,拥有一个自己的网站是盼望已久的事情,如今终于实现了,我的网站搭建于2015年05月26日,那是一个值得纪念的日子.搭建一个网站对于初学者...
Android学习笔记十三:性能优化
摘要:
应用程序开发完成,只是完成了其中一小方面,应用程序的异常处理,日志分析和性能优化是更重要的一方面,目的是让用户喜欢和享受体验的过...
python遍历文件夹下所有图片
需求
遍历Windows系统下文件夹,找出文件夹下所有图片,同时给图片添加logo。
遍历目录
Windows系统目录结构E:\blog\article\2024,反斜杠需要添...
Open Claw 从 Moonshot 切换到 Qwen 模型指南
从 Moonshot 到 Qwen:我的 Open Claw 模型切换实战
今天我想和大家分享一下,我是如何将我的 Open Claw 从 Moonshot(也就是 Kimi)模型切换到 ...