NullPointerException的博客

路漫漫其修远兮 吾将上下而求索

java 常量池及字节码文件的9大属性

常量池的基本结构 java类所对应的常量池主要由常量池数量和常量池数组两部分组成,如下图所示,常量池数量紧跟在minor version后面,占2个字节。常量池数组则紧跟在常量池数量之后。 常量池数组是一个类似数组的结构。这个数组是固化在字节码文件中的,由多个元素组成。与一般的数组概念不同,常量...

2019-05-26 03:01:50

阅读数 42

评论数 0

java class字节码概述

class 字节码概述 每一个java类被编译后都会生成一个对应的.class字节码文件,要想研究JVM加载java类的原理,实现必须掌握java类被编译成的.class文件结构。下面从几个方面来描述字节码的组成格式。 1. class文件构成基础 在class字节码文家中,数据都是以二进制流的形...

2019-05-26 01:40:10

阅读数 24

评论数 0

Effective Java第三章: 对所有对象都通用的方法

一、覆盖equals方法时遵守通用约定 期望结果 类的每个实例本质上都是惟一的; 不关心类是否提供了“逻辑相等”的测试功能; 超类已经覆盖了equals方法,从超类继承过来的行为对于子类也是合适的; 类是私有的或者是包级私有的,可以确定它的equals方法永远不会被调用; 覆盖equals方法...

2019-01-27 16:52:11

阅读数 33

评论数 0

Effective Java 第2章: 创建和销毁对象

一、用静态工厂方法代替构造器 静态工厂方法与构造器相比有以下几个优点: 静态工厂方法有名称; 不必每次调用的时候都创建新的对象; 可以返回原返回类型的任何子类型的对象; 在创建参数化类型实例的时候没,静态工厂方法使得代码变得更加简洁; 缺点: 类如果不含有公有的或者受保护的构造器,就不能被子...

2019-01-20 19:01:49

阅读数 41

评论数 0

单元素的枚举类型实现单例模式

单例的枚举实现在《Effective Java》中有提到,因为其功能完整、使用简洁、无偿地提供了序列化机制、在面对复杂的序列化或者反射攻击时仍然可以绝对防止多次实例化等优点,单元素的枚举类型被作者认为是实现Singleton的最佳方法。 其实现非常简单,如下: public enum Sin...

2018-07-31 14:20:58

阅读数 372

评论数 0

提示
确定要删除当前文章?
取消 删除