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、适配器模式
当前文章价值0.88元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章
来源:每日教程,
每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
转载请注明出处: https://teachcourse.cn/android-common-design-pattern ,谢谢支持!
010-wordpress如何检查当前运行的版本号,注意REST API在4.7以上版本才可以使用
要检查当前WordPress版本,有几种不同的方法可以使用:
1. 通过WordPress仪表盘检查
这是最简单直接的方法:
1. 登录到你的WordPress管理面板。
...
冒泡算法
一.摘要
什么是冒泡排序算法,如何使用冒泡排序算法?基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个...
调试最快的Android模拟器-Genymotion常见问题
摘要:
为什么想要总结这样的一篇有关Genymotion常见问题解决思路的文章?是因为刚接触Genymotion的时候,在安装和启动的时候总是提示错误,比如...
Genymotion是不是不支持微信 QQ 陌陌等
Genymotion是不是不支持微信 QQ 陌陌等,这个原因是因为Genymotion使用的是x86架构,微信、QQ、陌陌可能属于ARM架...
使用Kotlin实现设计模式中的观察者模式
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们...
Android语言kotlin学习规划
为制定一个有效的 Android 开发语言 Kotlin 的学习规划,我们可以按照以下步骤和资源进行系统性学习:
1. 基础知识准备
时间:1-2周
目标:熟悉...
动态给TextView控件设置权重
摘要:
如何给TextView控件动态设置权重?权重属于LinearLayout布局子控件的一个属性,想要动态添加一个TextView控件的权重,调用setLayoutParam...
盘点2018年,那些做过的事情
明天将是2018年最后的一天,感觉时间过得非常的快,年初还在头脑中回荡,然后就到了年末,3、4份忙碌中准备面试的材料,撰写了五篇Android学习笔...
Android事件分发流程分析证明(2)
摘要:
上一篇文章分析事件传递和事件处理的顺序,从运行Demo的角度说明onTouchEvent、dispatchTouchEvent方法和onInterceptTouchEvent方法的使...
使用Python定时从Nginx的日志中获取黑客的ip并加入访问黑名单
查看nginx日志经常会看到一些特殊的访问地址(包含十六禁止字符串请求),怀疑这些请求为非法请求,禁止包含特定字符请求对应的ip地址访问,保护...