java
佳乐一百
这个作者很懒,什么都没留下…
展开
-
HashMap的工作原理
HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到bucket位置来储存值对象。当获取对象时,通过键对象的equals()方法找到正确的键值对,然后返回值对象。HashMap使用链表来解决碰撞问题,当发生碰撞了,对象将会储存在链表的下一个节点中。 HashMap在每个链表节点中储存键值对对象。...原创 2021-08-15 19:28:56 · 284 阅读 · 0 评论 -
HashSet和HashMap的区别
原创 2021-08-15 19:27:59 · 271 阅读 · 0 评论 -
AVRO的系列化和反序列化(建造者模式)
package cn.tedu.pojo;import org.apache.avro.file.DataFileReader;import org.apache.avro.file.DataFileWriter;import org.apache.avro.io.DatumReader;import org.apache.avro.io.DatumWriter;import org.apache.avro.specific.SpecificDatumReader;import org.ap.原创 2020-10-23 07:56:28 · 293 阅读 · 0 评论 -
24种设计模式的七大原则和三种模型
七大设计原则:1、单一职责原则【SINGLE RESPONSIBILITY PRINCIPLE】:一个类负责一项职责.2、里氏替换原则【LISKOV SUBSTITUTION PRINCIPLE】:继承与派生的规则.(子类可替换父类)3、依赖倒转原则【DEPENDENCE INVERSION PRINCIPLE】:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。即针对接口编程,不要针对实现编程。4、接口隔离原则【INTERFACE SEGREGATIO...原创 2020-10-23 07:50:10 · 496 阅读 · 0 评论 -
Kafka和Rabbitmq的最大区别
功能上,两者都是实现了AMQP协议。那么在使用上的最大区别是什么呢?如何根据自己的需求进行选型?kafka是严格顺序保证的消息队列。即使在分布式环境下,也保证在同一分区内消息的顺序性。既然是顺序的,那么在同一个Topic下面,如果前面的消息没有消费完毕(收到回应),则不能读取下一条消息。那么在消费端,就变成了一个单线程操作,无法并发。虽然kafka可以通过分区实现并发,不过这个需要用多台kafk...原创 2019-12-07 15:25:10 · 1596 阅读 · 0 评论 -
Eureka和Zookeeper的区别
Eureka和Zookeeper的区别Spring Cloud在现在的版本其实也可以使用Zookeeper来进行服务注册的。那他们的区别在哪里呢?为什么要使用Eureka来进行服务注册呢?1、Zookeeper当master挂了,会在30-120s进行leader选举,这点类似于redis的哨兵机制,在选举期间Zookeeper是不可用的,这么长时间不能进行服务注册,是无法忍受的,别说30s...原创 2019-12-07 15:34:01 · 118 阅读 · 0 评论 -
异常:Error和Exception的区别
Error和Exception的区别error表示系统级的错误和程序不必处理的异常exception表示需要捕捉或者需要程序进行处理的异常NullPointerException:当操作一个空引用时会出现此错误。NumberFormatException:数据格式转换出现问题时出现此异常。ClassCastException:强制类型转换不匹配时出现此异常。ArrayIndexOutO...原创 2019-11-28 02:08:45 · 252 阅读 · 0 评论