
java
文章平均质量分 84
rammel
这个作者很懒,什么都没留下…
展开
-
LongAdder In Java8
LongAdder In Java8概述LongAdder在多线程竞争较大的环境下,用于替代AtomicLong。两者底层都是使用CAS来update底层long变量的值,然而当多线程竞争较激烈的情况下时,AtomicLong会造成很多CPU空轮询(竞争太激烈,cas总是失败);而LongAdder采用将一个long变量的存储和更新分散到多个Cell中的做法:每个线程对应特定的一个cell,再进行更新时只更新本线程对应cell的long值,当需要获取累加值时,再通过将全部cell对应long值累加的方式原创 2020-06-07 17:01:31 · 315 阅读 · 0 评论 -
Java序列化的机制和原理
Java序列化算法透析Serialization(序列化)是一种将对象以一连串的字节描述的过程;反序列化deserialization是一种将这些字节重建成一个对象的过程。Java序列化API提供一种处理对象序列化的标准机制。在这里你能学到如何序列化一个对象,什么时候需要序列化以及Java序列化的算法,我们用一个实例来示范序列化以后的字节是如何描述一个对象的信息的。序列化的必要性Jav...转载 2018-02-27 19:56:07 · 153 阅读 · 0 评论 -
Thinking In Java final关键字
可能使用到final的三种情况:数据、方法和类1.final数据有时候数据的恒定不变是很有用的,比如: 1.一个永不改变的编译时常量 2.一个在运行时被初始化的值,而不希望它被改变 一个既是static又是final的域只占据一段不能改变的存储空间。根据惯例,既是static又是final的域(即编译时常量)用大写表示,并使用下划线分割各个单词。我们不能因为数据是fi...原创 2018-03-01 22:49:34 · 177 阅读 · 0 评论 -
Thinking in Java 内部类
内部类可以将一个类放在另一个类的内部,这就是内部类1.创建内部类如下代码来创建一个内部类:class Outer{ class Inner{}}这里的inner就是一个内部类 如果想从外部类的非静态方法之外的任意位置创建某个内部类的对象,那么必须具体地指明这个对象的类型:Outer.Inner2.链接到外部类当生成一个内部类的对象时,此对象与制造它的外围...原创 2018-03-02 17:12:04 · 172 阅读 · 0 评论 -
Java设计模式六大原则
JAVA代码设计六大原则:单一职责 开闭原则 里氏替换原则 依赖倒置原则 接口隔离原则 迪米特法则单一职责原则(Single Responsibility Principle) 顾名思义,有点物以类聚,人以群分的感觉。一个类或一个方法应该只负责它应该负责的东西。比如有一个类:loginController那么在此类中,就只写一些关于登录的相关代码,不要在这个类里又写和登录不相关...转载 2018-04-10 22:28:58 · 169 阅读 · 0 评论