![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记
码义小小
菜兮兮,哭唧唧
展开
-
常常常用命令(shell and sql)
常常常用操作原创 2023-10-19 16:10:38 · 104 阅读 · 0 评论 -
设计模式——装饰者模式
定义动态地将责任附加到对象上。 (扩展功能,装饰者是比继承更有弹性的替代方案)了解装饰者的实现过程1.现有一个组件(对象),需要增加它的行为2.采用装饰者模式扩展它。3.首先是定义一个装饰者继承组件的父类接口,让装饰者获得与被装饰对象同样的类型。这里的目的不是继承被装饰者的行为。4.因为装饰者需要代替被装饰者,所以它们必须是同一类型,这对使用者来说,总是用的同一类型,几乎没有任何变化。5.装饰者中的行为是如何来的?是通过组合装饰者,得到了装饰者的行为。如: public clas.原创 2021-08-06 10:25:23 · 200 阅读 · 0 评论 -
设计模式的藏宝图,请收好
策略模式原创 2021-08-05 17:39:39 · 171 阅读 · 0 评论 -
设计模式——观察者模式
观察者模式1定义: 定义了对象之间一对多的依赖关系,当一个对象改变状态时(主题对象),它的所有依赖者都会收到通知并自动更新(观察者)。2.设计原则: 为了交互对象之间的松耦合设计而努力。3.松耦合的体现: (1)主题对象只知道观察者实现了某个接口,而不知道具体的观察者是谁,做了什么或者其他的细节。 (2)任何时候都可以增加,删除新的观察者。主题对象不受影响。 (3)可以独立的复用主题对象或者观察者。 (4)改变任何一方,另一方都不会受影响。设计实现观察者模式:1.一般主题接口.原创 2021-08-05 17:12:46 · 102 阅读 · 0 评论 -
重识设计模式
认识模式模式是在某情境下,针对某问题的某种解决方案。模式的特性模式应该具有通用性,可行性,普遍性。 【1】对于普遍重复发生的问题,模式应该能够很好地且轻松地处理这些问题。 【2】而不是针对一个重复发生的问题,仅仅能够达到解决问题的目的。 例如:经常会把车钥匙锁在车里,砸窗户拿到钥匙并不是一个每次都好用的方案。“砸窗户”不能被称为一个模式。 【3】使用模式,也需要看模式的‘成本’,和它能够带来的效益。模式只是一种设计思想,指导方针,需要的时候,可以对它做出必要的修改。模式的类.原创 2021-08-05 09:52:59 · 90 阅读 · 0 评论 -
没想到鹅哥的爱情故事,可以让你学废几个设计模式。
这里将用一个案例来展现模式的之间的携手合作(看过Head First设计模式的应该知道这个例子。)如果学习设计模式的话,建议看这本书,写的很有趣。案例介绍(稍有变化)1.有一群鸭子(拥有可以呱呱呱呱叫的行为),传说有一只鸭妹美若天仙。2.有一只理想远大的鹅(鹅哥,拥有嘎嘎嘎嘎叫的行为),但是它想将自己伪装成鸭子,混入鸭群(因为它看上了那个鸭妹子。) 鹅哥用什么方法【1】可以先接近鸭妹子呢?3.鹅哥成功混入,但是好景不长,主人开始发现不对劲了,原因是他竟然采用了一种方法【2】,可以统计真正鸭.原创 2021-07-30 22:53:51 · 6131 阅读 · 0 评论 -
设计模式——代理模式
Java RMI(Remote Method Invocation)远程方法调用原创 2021-07-22 16:22:34 · 140 阅读 · 0 评论 -
设计模式——状态模式
定义允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。【1】具体做法 将某个事物的各种状态都定义成一个类,每个类都拥有具体事物的行为,这些不同状态内部的方法对应着该状态下应有的行为。剖析状态模式实际上的做法是,由于某个事物的行为会随着自己状态的改变而改变,为了扩展,做法不再是根据状态的不同,让事物本身去改变行为。这个时候,将状态都定义成一个类,同时具有着该事物的每个行为。就像是这个事物在每个状态下都有了自己的一个分身。当外界需要某个状态下对应的行为,不是事物本身变来.原创 2021-07-21 08:23:09 · 101 阅读 · 0 评论 -
设计模式——迭代器模式+组合模式
定义实现迭代器提供一个接口Iteratorinterface Iterator{ hasNext(); next();}然后各种对象集合只需要实现自己的迭代器即可。eg:ArrayList的迭代器底层会调用size(),get()来完成遍历 数组的迭代器会使用数组的length属性以及[]来完成遍历作用迭代器模式封装了对各种集合的遍历操作,让其他对象在遍历不同的集合时,可以使用迭代器,从而减少重复代码。eg:若是没有迭代器 那么如果在一个方法中需要遍历Array.原创 2021-07-08 14:56:09 · 142 阅读 · 0 评论 -
设计模式——模板方法模式
定义在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类在不改变算法结构的情况下,重新定义算法中的某些步骤。特点模板方法定义了一个算法步骤,并允许子类为一个或多个步骤提供实现。eg: public abstract class Template{ //将模板方法定义成final类型,不希望子类覆盖改变 //这是基类提供的一个模板算法(步骤),是固定的,希望其他类可以遵循 void final templateMethod(){ a(); b(.原创 2021-07-01 11:11:25 · 110 阅读 · 0 评论 -
设计模式——适配器模式+外观模式
适配器模式定义 将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。原理适配器通过实现目标接口,将自己包装成真正需要的类型,而在内部通过组合被适配的类型,表面调用的是目标类型的方法,实际上是由被适配类型方法实现的。eg: //实现Enumeration的接口,让自己表面上看着是一个Enumeration public class IteratorAdapter implements Enumeration { //组合被适配者 I.原创 2021-06-30 14:01:02 · 127 阅读 · 0 评论 -
设计模式——命令模式
定义将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。要点:1.命令模式将发出请求的对象和执行请求的对象解耦2.它们通过一个对象命令来进行交互,命令对象封装了接受者和一个或一组动作。3.可以使用宏命令来指定多个命令,一次调用一组指定的命令。代码示例1.如何解耦发送者和接受者? 在代码中,遥控器和各种装置(如:灯,门,风扇...),通过Command对象解耦。遥控器中传入了Command命令,提供一个方法(如:execute.原创 2021-06-28 16:39:15 · 88 阅读 · 0 评论 -
设计模式——单例模式
定义一个类只能有一个实例应用线程池、日志对象、缓存等。需要让这些对象在整个程序中只有唯一的实例,保证所有访问它们的对象得到的都是同样的数据。懒汉式单例模式(斗王级别)//懒汉式public class LazySingleton { //懒汉式,开始不实例化,等到用的时候再实例化 //保存唯一单实例 private static LazySingleton singleton ; //私有构造 private LazySingleto.原创 2021-06-25 16:10:10 · 120 阅读 · 0 评论 -
设计模式——工厂模式
所有的工厂模式都是用来封装对象的创建。定义工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类将实例化推迟到子类。简单工厂和工厂方法的区别:1.简单工厂: 在一个类中完成对所有示例的创建,完成各种类型产品的创建。2.工厂方法: 在抽象类中定义创建对象的抽象方法,让子类继承自己实现创建自己示例的方法。依赖倒置原则:(倒置:指和一般的oo设计思考方式完全相反) 要依赖抽象,不要依赖具体类 避免违反依赖倒置原则的方法: 1.变量不可以持有.原创 2021-06-24 15:54:03 · 149 阅读 · 0 评论 -
RocketMQ可以启动成功,但是并不存在~/logs下的日志文件
主要是针对RocketMQ启动成功之后,并未生成以下命令中的日志文件。关于安装和部署就不介绍了。版本:RocketMQ 4.8.0环境:macos//执行以下命令时提示文件不存在tail -f ~/logs/rocketmqlogs/namesrv.log之后查看nohup.out文件中输出,已经namesrv已经启动成功。网上搜索该问题时,发现没有相应的解答。之后我看配置文件中有一些{user.home}的字样,看了下自己的mac的hostname变成了bogon,估计就是这个问题。.原创 2021-05-25 11:48:02 · 2774 阅读 · 3 评论 -
i不知道的SQL语句的积累(sql函数的使用)
case…when…then简单的case函数: case sex when '1' then '男' when '2' then '女' else '未输入' endcase搜索函数: case when sex = '1' then '男' when sex = '2''then '女' else '未输入' end;case...when...then 使用场景:#有user表如下:id name sex1 张三 12 李四 13 .原创 2021-01-14 16:41:06 · 166 阅读 · 2 评论