设计模式容易混淆的几个对比
1、代理模式跟委派模式混淆
委派就是说全权代理
代理只参与某一个环节,委派参与整个环节
委派可以说是一个静态代理
Porxy 传一个接口,传实现类不行吗?
Java核心思想:面向接口编程
OOP:用代码来解释生活
接口:只是一种规范,做任何事前以前先思考好以后,再去动手(制定好规范),三思而后行
实现类:必须先有接口,开发顺序天生决定了
中介:租房子 代理人(专业化),要租房子的人,也许还没出生
2、命令模式策略模式混淆
命令模式: 注重命令的个数,分类相当于是菜单的(内容如何定义)
没有UI以前 DOC界面
请选择以下功能
1.开户 2.转账 3.挂失 4.退出
1.信用卡 2.借记卡
3、多态和策略混淆
多态:是Java的一种语法(有些语言的语法是不支持多态的,它照样也要用来实现业务逻辑,也要使用设计模式)
策略:是一种经验的总结
4.观察者模式结合动态代理
5.模板方法和策略模式的区别
关心业务流程的固定(修改某一个部分的逻辑,但不影响流程的执行)
策略注重的选择结果
6.反射底层
操作的是字节码,由JVM提供安全保障
当你要用代码去操作代码的时候,绝对是要用反射的 原则:总之首先要找到字节码
7.看源码最大的痛点在哪里?
找不到入口
Main方法启动,这就是入口
java
ClassPathXmlApplicationContext app = new ...
ClassPathXmlApplicationContext app = new ...
1
java
Listener
Listener
1
Servlet:
java
DispatcherServlet 这就是入口
DispatcherServlet 这就是入口
1
一定要先看文档 了解了设计模式以后,你会跟作者想到一块去 7分猜测,3分验证(英雄所见略同)