自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (2)
  • 收藏
  • 关注

原创 设计模式之模板模式

目录简介创建过程定义抽象类实现抽象类1实现抽象类2总结公司的主营业务中涉及不同渠道进来的客源,针对每一种来源都写一遍业务会造成代码逻辑的不清晰,并且后续维护困难,针对这种情况,主管提出代码需要重构,耦合的情况下(不同渠道进来客源可能会执行某些相同操作)还要分清各个渠道来源,方便后续维护,这里就用到了我们熟悉的模板设计模式。简介在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定

2020-06-27 22:57:16 129

原创 设计模式之策略模式

策略模式一个类的行为或其算法可以在运行时更改,策略模式把对象本身和运算规则区分开来,在多种算法相似的情况下,能够解决if...else所带来的复杂和难以维护的问题。实现策略模式主要包括三部分环境类Context:用来操作策略的上下文,即Conext持有策略。 抽象策略类(Strategy):策略的抽象接口,定义需要实现的方法。 具体的策略类(ConcreteStrategy):具体策略的实现。具体步骤为创建接口public interface Strategy { ...

2020-06-27 20:00:33 113

原创 lambda表达式详解

实现lambda表达式与传统接口的对比。

2020-06-26 22:56:52 1310 1

原创 Future和FutureTask及线程池

用个FutrueTask时,构造FutureTask futureTask = new FutureTask(new Callable());用future时,future作为线程池的返回值,线程池的入参为new Callable();

2020-06-26 22:55:24 1497

原创 Spring中对InitializingBean接口的使用

这几天做项目看到同组的大牛用到了Spring中的InitializingBean接口实现初始化加载,这里做下记录。在Spring中凡是实现了InitializingBean接口的类在初始化加载时都会实现以下方法。public class TestInitlizationBean implements InitializingBean { @Override public void afterPropertiesSet() throws Exception { System.out.printl

2020-06-26 22:41:55 924

原创 Spring源码解析(二)反射

spring源码中有很多地方涉及到反射的知识,这里还是有必要再复习一下。Java程序中的许多对象在运行时都会出现两种类型,编译时类型和运行时类型,例如代码Person p = new Student(), 这行代码将会生成一个p变量,该变量的编译时类型为Person,运行时类型为Student,除此之外,还有更极端的情形,程序在运行时接收到外部传入的一个对象,该对象的编译时类型是Object,但程序又需要调用该对象运行时类型的方法。解决上述问题最好的办法就是利用反射。每个类被加载后,系统就会为该类生

2020-06-09 07:48:13 759

Gallery.rar

VC++6.0 组件 Gallery.rar

2011-11-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除