![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
白可爱同学
这个作者很懒,什么都没留下…
展开
-
JAVA的垃圾收集机制
一、垃圾收集算法1.1、标记-清除算法标记-清除算法是最基础的收集算法,算法分为“标记”、“清除”两个阶段,首先标记出所有需要回收的对象(使用可达性分析算法),再标记完成后统一收回,这是最简单的垃圾回收算法,同时也是后续算法的基础,后续的收集算法都是基于这种思路并对其的不足之处加以改进,算法执行过程如图:回收前状态:回收后状态:由上图可以看出,此算法在执行后可能会造成大量内存碎片,有可能导致后续分配大对象是无法找到最够的连续空间而导致触发另一次的垃圾收集,同时标记和清除两个阶段的效率都不高,造原创 2020-07-31 10:36:51 · 167 阅读 · 0 评论 -
@ConfigurationProperties注解的作用
@ConfigurationProperties注解的作用和@Value类似,都是获取配置文件中相应的配置值,但是@ConfigurationProperties与@Value不同的是,@Value一次只能获取一个值,但是@ConfigurationProperties可以获取多个值,例如,有如下配置:my: test: name: lisi age: 21我们使用@ConfigurationProperties就可以这么获取:@ConfigurationProperties(pr原创 2020-07-16 14:26:18 · 4160 阅读 · 0 评论 -
NIO实现简单的服务端-客户端通信
//服务端import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.SelectionKey;import java.nio.channels.Selector;import java.nio.channels.ServerSocketChannel;import java.nio.channels.SocketChannel;原创 2020-06-03 20:02:39 · 156 阅读 · 0 评论 -
Java代理机制
Java代理模式,就是通过代理对象来访问目标对象,扩展目标对象的功能,比如:当你的项目以及写完了,但是突然要求新增一个功能,在每个业务操作前去判断权限,如果直接修改源代码的话,就会很麻烦,甚至破坏业务结构,这时候使用代理来扩展功能就很合适。静态代理静态代理就是写一个接口或者父类,让代理对象和目标对象都实现这个接口或者继承这个父类,然后调用相同的方法,这里其实就是对Java多态思想的应用。//公用的接口public interface StaticBiz { public void say();}原创 2020-05-25 12:00:45 · 126 阅读 · 0 评论