寄存器
这是最快的存储区,因为它位于不同于其他存储区的地方,在处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。
栈(stack)存
位于通用RAM中,存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new出来的对象)或者常量池中(字符串常量对象存放在常量池中)
堆(heap)
存放所有new出来的对象
静态存储(static storage)
存放静态成员(static定义)
常数存储(constant storage)
存放字符串常量和基本类型常量(public static final)
非RAM存储
如果数据完全存活于程序之外,那么它可以不受程序的任何控制,在程序没有运行时也可以存在。