- 博客(8)
- 收藏
- 关注
原创 通俗易懂说java设计模式-代理模式
用通俗简短的语言说清楚什么是代理模式,什么是静态代理和动态代理。简单明了地讲清楚动态代理各部分代码的具体作用,知其然而知其所以然。
2022-06-04 19:06:13 282 1
原创 通俗易懂说java设计模式-装饰器模式
一个装饰器之所以要继承food类,是要保证装饰器通过装饰food而构造的新对象也是一个food。这么做的原因是什么呢?首先从字面理解,装饰是很轻的动作,一个food装饰完当然应该还是food,其次这么做可以方便对food类的多态使用,并且是实现嵌套调用的关键。装饰器从代码层面来看,首先它要继承被装饰对象的抽象类或接口。继承food类后,我们还需要调用原food的方法和属性,才能够加以装饰,构造出装饰后的food方法和属性。这就是为什么我们要把整个被装饰对象传进来,装饰不是无中生有,而是在原先的基础上进行。.
2022-06-01 13:14:52 304
原创 通俗易懂说java设计模式-工厂模式
工厂模式,就是将创建对象的过程交给“工厂”,需要创建对象时调用对应工厂类的对象创建方法即可。为什么要使用工厂模式?有些时候我们不能简单地通过“new()”来创建一个对象,我们需要对对象创建进行权限控制、装饰和日志输出等操作,从而灵活地控制对象生产过程。工厂模式一般可分为简单生产模式、工厂方法模式和抽象工厂模式。
2022-05-31 17:05:56 303
原创 通俗易懂说java设计模式-策略模式
策略模式指的是将策略(完成特定行为的方法)从主业务逻辑中抽离出来的思想。比如一个人早上起床上学的过程,首先刷牙洗脸,然后吃饭,前往学校,到校后上课。前往学校的过程就是一种可以从主业务逻辑中抽离出来的策略。我们既可以选择走路上学,也可以骑单车、父母接送或搭乘网约车,如果不使用策略模式,则主业务逻辑将臃肿不堪,且不利于实现拓展。如果我们将前往学校的行为策略抽象出来作为接口,用不同的策略实现类去实现这个接口,在具体业务逻辑中根据需要选择具体的策略实现类,这样便很好地实现了策略和主业务逻辑地解耦。
2022-05-27 18:01:48 184
原创 史上最通俗易懂-什么是泛型
不使用泛型的情况下,在定义一个ArrayList类型时,我们可以指定其add方法中接收某种特定类型的参数。但是,如果指定了add只接收特定类型参数,比如String类型,那这个ArraList类的数组对象就只能添加String类型的元素。如果需要存放整型数就需要再定义一个存放整型数的ArrayList类,这降低了代码重用性。所以,我们干脆在定义ArayList类型的时候就不指定add方法接收参数的具体类型,然后在使用的过程中,由用户根据需要指定参数的类型。用一句话来说,“泛型”就是允许一个类中的参数类泛化。
2022-05-27 12:44:06 393
原创 通俗易懂说java设计模式-单例模式的实现
对某些类来说,其对象在内存中只需要一个,或者必须保证其被访问到的对象始终是同一个,拥有固定的属性和方法,用来完成某些固定而统一的操作。而在开发这些类的时候,如果不加以设计,则仍然可能被使用者多次创建产生多余的或不统一的对象,无意义地在内存中产生多个副本或产生多个不一致的对象。因此我们需要对类进行设计,实现单例模式,即保证某类只有单个实例的模式,实现单例模式有八种方式。一、饿汉式为什么叫饿汉式?饿汉式从字面理解就是一有食物就迫不及待地吃东西的状态。实际上,饿汉式的单例模式实现便是在类的加载中便马上莫不
2022-05-24 21:59:57 153
原创 Java抽象类有什么用
假设“猫”、“狗”和“鸟”等类各自实现其吃饭、喝水、玩耍和洗澡等方法,虽然不同动物吃的饭、喝的水、玩耍项目和洗澡水热度等要求不尽相同,但养这些动物的人每天对待这些动物的业务逻辑是完全一致的。比如喂猫吃饭、喝水,和猫一起玩和给猫洗澡,对狗和鸟实现的也是这些操作。如果不考虑代码可读性和可维护性的话,可能会得到下面的代码。......
2022-05-21 10:39:23 337
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人