![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
Lovey_北禾
努力过上自己想要的生活。加油北禾!
展开
-
C# DLL封装代码引用
首先其次然后接下来直接用搞定。原创 2021-12-31 22:25:11 · 223 阅读 · 0 评论 -
C# 责任链模式
首先我们要写一个请求的类。class Request{ private int day; private string reason; public int Day { get { return day; } set { day = value; } } public string Reason { get { return reason; } set { reason = val原创 2021-07-06 20:08:28 · 158 阅读 · 0 评论 -
LIst和Dictionary实例应用(※)
一个 句子指的是一个序列的单词用单个空格连接起来,且开头和结尾没有任何空格。每个单词都只包含小写或大写英文字母。我们可以给一个句子添加 从 1 开始的单词位置索引 ,并且将句子中所有单词打乱顺序。比方说,句子"This is a sentence"可以被打乱顺序得到"sentence4 a3 is2 This1"或者"is2 sentence4 This1 a3"。给你一个 打乱顺序的句子s,它包含的单词不超过9个,请你重新构造并得到原本顺序的句子。...原创 2021-06-15 10:02:25 · 177 阅读 · 0 评论 -
23种设计模式——外观模式
为复杂子系统提供了一个简单接口违反了开放封闭原则传统的操作是客户调用好多个子系统,外观模式的出现只需要客户掉外观类就行了外观类其实就是客户端举例我想在家看电影,旧社会时代,我要自己去把DVD打开,把爆米花机打开,投影仪打开,屏幕放下来,立体声打开,灯光打开。新时代出现了更便捷的方法,我把它称之为人工智能,我只需要躺着对人工智能发送命令,他就会替我实现一些类的操作。代码实现子系统public class DVD { private stat原创 2021-04-08 22:14:33 · 159 阅读 · 0 评论 -
23种设计模式——模板模式
封装了不变的部分,拓展了可变的部分,不变的部分在父类中实现,可变的部分在子类中实现。模板模式的特点是行为由父类去控制,子类去实现。符合开闭原则。模板的流程或者说算法框架是固定的,具体的实现由子类去修改。图解:父类:写子类可以修改的方法以及固定流程的方法。子类:写修改父类中的抽象方法。实例:英雄固定出生、死亡。每个英雄不同的是英雄以及QWER技能。代码:抽象类(父类) public abstract class HeroLibrary {原创 2021-03-30 16:24:20 · 171 阅读 · 0 评论 -
23种设计模式——装饰模式
问题:由于过多使用继承来扩展对象的功能。举例:给游戏写一种类型的tank,想让他实现红外线和水陆两栖的功能。IA:红外线,IB:水,IC:陆。由上述的例子可以看出来,如果T50Tank想要获得红外线和水陆两栖的功能,就要继承4个父类,这就导致了由于过多使用继承来扩展对象的功能,所以采用装饰模式来对代码进行修改。思想:继承是静态的,我们要实现动态的。就比如虚方法是动态方法,程序需要调用他的时候才会使用到他,而上述的坦克的例子,属于继承给写死的静态方法,我们要通过装饰模...原创 2021-03-18 13:08:38 · 204 阅读 · 2 评论 -
list升序和降序
升序sortlist.sort把数组进行升序排序num.Sort(); for (int i = 0; i < k; i++) { result.Add(num[i]); }降序sortlist.sort 那数组进行升序排序翻转遍历num.Sort(); for (int i = k; i > 0; i--) {原创 2021-03-12 22:08:15 · 1154 阅读 · 0 评论 -
23种设计模式——桥接模式
分离接口和抽象类就一句话 解耦 避免错综复杂的 交叉 增加耦合 static void Main(string[] args) { Car car = new Poersche(); car.CarType(); car = new Ferrari(); car.CarType(); } } /// <summary> /// 发动机类.原创 2021-03-02 19:14:13 · 127 阅读 · 0 评论 -
23种设计模式——适配器模式
何为适配器就是转接口。/// <summary> /// 目标对象需要的方法 就是Lightning 转 TypeC /// </summary> interface Target { void TypeC(); } /// <summary> /// 适配器对象 就是充电头 /// </summary> class Adapter : Target {原创 2021-03-02 11:33:49 · 115 阅读 · 0 评论 -
23种设计模式——原型模式
原型模式——克隆模式思想有一套试卷,A和B两个同学一起做,A同学做完了,B看了一眼,感觉挺好的,然后把A的试卷抢过来,照着A的卷子Copy了一份一摸一样的,A就是原型,B觉得A做得不是很好,然后可以在B的试卷上改一改,改完了之后完美了100分。就是说B可以按照原型A来copy,并且可以在A的基础上进行修改。得到更好的。深克隆和浅克隆何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。原创 2021-03-01 17:22:14 · 134 阅读 · 0 评论 -
23种设计模式——建造者模式
为什么会出现建造者模式需要创建一个复杂对象的时候,这个对象通过一定的步骤组合而成,并且步骤一步都不能少。流程玩家(客户)告诉拳头(指挥者)我想要一个什么样的英雄,拳头告诉手下的程序员去做一个这样的英雄,程序员去属性库(抽象建造属性类)中找,符合这样英雄的抽象属性,然后具体去设计这个英雄的各种属性。核心通过构造函数,让客户去改变构造函数中的里式替换子类。代码展示首先建造一个抽象类库,生命值,魔法值,攻击力,防御力 abstract class GameBuilder {原创 2021-02-25 16:52:04 · 113 阅读 · 1 评论 -
23种设计模式——简单工厂设计模式
运用Switch case执行程序原创 2021-02-25 16:35:14 · 96 阅读 · 0 评论 -
面向对象设计
面向对象设计的目标1、可拓展性,容易添加新的功能。2、灵活性,修改代码时更容易添加新的功能。3、可插入行,容易将一个类插进去,并且同时将另一个有同样接口的类加进来。判断软件设计质量的标准高内聚低耦合高内聚:在这个类中,自己的里面有很强的相关性代码组成,只负责一项任务,不可分割。低耦合:在多个类之间,他们的相互联系能力尽量的低,比如去掉一个类,不影响其他功能的正常执行。但是这种不是绝对的互不相干,而是尽量的低,尽量的不要有太多的干涉。设计基本原则1.单一职责原则2.开放—封闭原则3.里氏原创 2021-02-21 21:14:24 · 391 阅读 · 0 评论 -
23种设计模式——单例模式
为什么会出现单例模式项目中经常会遇到好多个类调用一个类实例的情况,每次调用这个类都要实例化一下也就是new一下,这样就会把原始类里面的数据清空,得不偿失,所以产生了单例模式的这种编程设计模式。单例模式的目的单例模式被设计出来就是为了确保一个程序中只有一个实例,并提供一个全集访问点,节省系统资源。实现单例模式的方法首先新建一个单例类,把这个单例类的构造函数设置成private,让这个类无法在外部被实例化。无法从外部实例化,就要从内部实例化,然后在这个单例类里提供一个方法来和外部对接这个实例化的类。原创 2021-02-18 10:44:57 · 109 阅读 · 0 评论