Browsed by
分类:Java

【不做标题党,只做纯干货】HashMap在jdk1.7和1.8中的实现

【不做标题党,只做纯干货】HashMap在jdk1.7和1.8中的实现

《倚天屠龙记》里九阳真经里的口诀:他强由他强,清风拂山岗;他横由他横,明月照大江。他自狠来他自恶,我自一口真气足。(原谅我插入广告缅怀金庸大师,年少时期读的最多的书就是金庸大师的,遍布侠骨柔情大义啊)。这里的“真气”就是先掌握好jdk1.7和1.8,其它学不动的版本以后再说。[……]

Read more

Java transient关键字使用小记

Java transient关键字使用小记

我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。

然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列化操作,本地序列化缓存也适用)中被传输,这些信息对应的变量就可以加上transient关键字。换句话说,这个字段的生命周期仅存于调用者的内存中而不会写到磁盘里持久化。

总之,java 的transient关键字为我们提供了便利,你只需要实现Serilizable接口,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会序列化到指定的目的地中。[……]

Read more

内存泄漏与内存溢出

内存泄漏与内存溢出

        不管哪种编程语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址。java中对象可以采用new反射clone反序列化的方法创建,这些对象的创建都是在堆(Hea[……]

Read more