一切都是对象(java)

整理总结

1:用引用操纵对象

在java里,一切都被视作对象

。因此可用单一固定的语法的简介表示来操纵对象,但操纵的标识符实际是对象的引用。

引用并不一定要有一个对象与他关联,例如:String s;

这里创建的只是一个引用,而不是对象。

一般为了安全,会先初始化一个值。

2.1:存储的位置

程序运行时,对象是怎么进行放置安排的,内存是怎么分配的?

(1)寄存器。最快的存储区,位于处理器的内部。

(2)堆栈。位于通用RAM(随机访问存储器),速度仅次于寄存器,某些java数据存储在堆栈中,特别是对象引用,但java对象并不存在其中。

(3)堆。一种通用的内存池(也位于RAM区),用于存放所有java对象。其进行存储分配和清理所用时间比堆栈存储分配需要更多的时间。

(4)常量存储。常量值通常直接放在程序内部,这样是安全的,因为它永远不会被改变。

(5)非RAM存储。如流对象和持久化对象。

流对象是把对象转换成字节流发送给另一台机器;

持久化对象是将对象存放在磁盘上。

即使程序终止,他们仍可以保存自己的状态。

2.2

基本数据类型:

java不用new来创建基本数据类型对象,而是创建一个非引用的变量,直接存储值,并存放在堆栈中,更加高效。


所有数值类型都有正负号

包装器可以在堆中创建一个非基本对象,用来表示对应的基本类型

java提供了两个高精度计算的类:BigInteger和BigDecimal。它们大体属于包装器范畴,但没有对应的基本数据类型。

能作用于int或float的操作也通用作用于BigInteger或BigDecimal,以速度换取了精度。

/***************************************************************************************************************************************/

数组:

当创建一个数组对象时,实际上就是创建了一个引用数组,每个引用都会被初始化一个特定值null。

当创建一个基本数据类型数组时,特定值为0。

/*************************************************************************************************************************/

访问修饰符:


你可能感兴趣的:(一切都是对象(java))