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、适配器模式

你可能感兴趣的文章
来源:每日教程,
每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
005-Microsoft SQL Server Management Studio 18如何调试存储过程中的sql代码
在Microsoft SQL Server Management Studio (SSMS) 18中,可以通过多种方式调试存储过程中的SQL代码。以下是一些常见的方法:
1. 使用调试器
SSM...
纠结怎么开启Windows图片阅览功能呢?
Windows7操作系统图片阅览功能,有时候需要查看保存图片内容,每次都需要直接打开,显得很麻烦,开启Windows7图片阅览功能,可以直...
Python框架Flask实现接口API统一格式封装应用
当然,除了上述基本的CRUD操作(如GET获取用户信息)外,我们还可以在其他类型的API接口中使用统一响应格式封装。这里再举几个不同HTTP方法的例...
批处理实现自动刷抖音过程
摘要
Windows都平台支持批处理语言,使用批处理定时调用adb命令,实现自动刷抖音、刷快手、刷微信视频的功能,解放我们的双手,仅需要几句代...
AI Agent 应用开发:从单轮到多Agent协作实战
AI Agent 应用开发:从单轮到多Agent协作实战
从单轮对话到多Agent协作,不是功能叠加,而是架构思维的彻底重构。我花了四周时间,把一个简单的"...
30分钟做专业PPT
30分钟做专业PPT:Kenya Hara「空」的风格实战
背景:上周我用 huashu-design 做了一份关于 AI 心理学的演讲 PPT,8 页,25 分钟,从开口到可交...
Android项目结构与分析源码,其中的秘密,你知道吗?
解读Android源码从熟悉Android项目结构开始,认识res和src文件夹下各个文件夹的作用和存放的资源,打开sdk路径下的plat...
Android开发之混淆高级教程01
摘要:
上一篇文章介绍了混淆的基础知识,其中包括保留指定的包名、类名、方法名以及字段名,然后总结了通配符和keep关键字的用法,这篇文章主要...
Android语言kotlin数组详细介绍和示例说明
Android语言Kotlin数组详细介绍与示例说明
在Kotlin中,数组(Array)是一种固定大小的、同构数据元素序列。它们在内存中连续存储,因此访问元素...
浅谈线程和进程
线程是比进程更小的执行单位。