编程

编程

if/else问题解决(二)策略模式+工厂方法消除

一、案例假设需求为,根据类型,处理相对应的操作,优化前有以下代码: public void operation(String type){ if("add".equals(type)){ //执行加法 }else if(&quo

2020-03-25
103 0

if/else问题解决(一)函数式编程

一、案例publicstaticIntegeradd(Integera1,Integerb1,Integerc1){returna1+b1+c1;}publicstaticIntegersub(Integera1,Integerb1,Integerc1{returna1-b1-c1;}publics

2020-03-24
177 0

手动实现J.U.C下面的Lock锁

手动实现J.U.C下面的Lock锁

2020-03-14
136 0

表达式1.0 / 0.0将返回什么?它会抛出异常吗?任何编译时错误?

这个问题,我还之前没想过,刚才实验了下...我们来分析下:我们知道,在整型运算中,除数是不能为0的,否则直接运行异常。但是在浮点数运算中,引入了无限这个概念,我们来看一下Double和Float中的定义。Double:publicstaticfinaldoublePOSITIVE_INFINITY=

2020-03-04
153 0

Java 四种线程池的用法分析

1、newThread的弊端执行一个异步任务你还只是如下newThread吗?newThread(newRunnable(){@Overridepublicvoidrun(){//TODOAuto-generatedmethodstub}}).start();那你就out太多了,newThread的

2020-03-03
162 0

ClassNotFoundException 和 NoClassDefFoundError 有什么区别

在写Java程序的时候,当一个类找不到的时候,JVM有时候会抛出ClassNotFoundException异常,而有时候又会抛出NoClassDefFoundError。看两个异常的字面意思,好像都是类找不到,但是JVM为什么要用两个异常去区分类找不到的情况呢?这个两个异常有什么不同的地方呢?Cl

2020-03-03
113 0

ThreadLocal(二)-内存泄漏问题

一、原因实际上ThreadLocalMap中使用的key为ThreadLocal的弱引用,弱引用的特点是,如果这个对象只存在弱引用,那么在下一次垃圾回收的时候必然会被清理掉。所以如果ThreadLocal没有被外部强引用的情况下,在垃圾回收的时候会被清理掉的,这样一来ThreadLocalMap中使

2020-03-02
137 0

设计模式-代理模式

代理(Proxy)是一种设计模式,提供了间接对目标对象进行访问的方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的功能上,增加额外的功能补充,即扩展目标对象的功能.一、简单介绍1、优点:符合了设计模式的开闭原则,即在对既有代码不改动的情况下进行功能的扩展。2、常见分类静态代理动态

2020-01-14
113 0

设计模式-单例模式的八种实现方式

在单例模式中,活动的单例只有一个实例,对单例类的所有实例化得到的都是相同的一个实例。这样就防止其它对象对自己的实例化,确保所有的对象都访问一个实例。一、饿汉式静态常量publicclassSingleton{//私有构造方法privateSingleton(){}privatefinalstatic

2020-01-13
137 0

DockerFile文件的编写

1、FROM [:] [AS ]: 设置基础镜像FROM感觉就是继承的关系 比如你需要在tomcat里运行你的web应用,就可以通过from来继承父镜像在集成自己的应用来扩展镜像。如果需要多个镜像呢?Docker 17.05版本以后,新增了Dockerfile多阶段构建。所谓多阶段构建,实际上是允

2020-01-03
229 0