
java
我终于有blog了
菜鸟一只
展开
-
设计模式
一、设计模式二、设计模式的六大原则1、开闭原则(Open Close Principle)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。2、里氏代换原则(Liskov Substitution Prin...转载 2018-03-01 15:22:57 · 194 阅读 · 0 评论 -
记一次jstack 处理堆栈溢出
jstack 应用首先通过:ps -ef|grep java得到java pid查看哪个线程占用最多资源:找出该进程内最耗费CPU的线程,可以使用ps -Lfp pid或者ps -mp pid -o THREAD, tid, time或者top -Hp pid 命令查看这个进程下面的所有线程占用情况。 发现线程21742占用最多。 将刚刚发现占用cpu最多的线...原创 2018-11-13 16:06:42 · 661 阅读 · 0 评论 -
java8自定义函数接口
java8开始可以自定义函数式接口,方便开发人员使用lambda表达式,简化了代码量。1.首先定义一个函数式接口(使用泛型能过更好的适配所有对象的操作) /** * Represents a function that accepts two argument and produces a result. * * * whose functional method is...原创 2018-11-15 13:55:47 · 3409 阅读 · 0 评论 -
curator使用自增长znode生成id
public class CuratorTest { static Object ob = new Object(); private static CuratorFramework curatorFrameworkClient; private static RetryPolicy retryPolicy; private ...原创 2019-01-04 16:00:29 · 579 阅读 · 0 评论 -
jvm大神链接
https://rednaxelafx.iteye.com/blog原创 2019-01-17 12:00:53 · 692 阅读 · 0 评论 -
java8 lambda
作者:RednaxelaFX链接:https://zhuanlan.zhihu.com/p/27159693来源:知乎首先我知道Oracle JDK 8 / OpenJDK 8对lambda表达式在运行时的实现方式是动态生成跟匿名内部类相似形式的类,而负责生成代码的类位于java.lang.invoke.InnerClassLambdaMetafactory。可以看到,这个类里有一个调试用...转载 2019-01-14 18:03:44 · 514 阅读 · 0 评论 -
获取Java运行时增强类的class内容
1.dumpclassdumpclass这个小工具做了一些增强,更加方便地使用。支持? *的匹配支持多个ClassLoader加载了同名类的情况。比如多个classloader加载了多份的logger,如果不做区分,则dump出来时会被覆盖掉,也分析不出问题。dumpclass可以在maven仓库里下载到: http://search.maven.org/#search%7Cga%...原创 2019-01-23 14:45:03 · 919 阅读 · 0 评论