万物皆对象
1。java用reference来操纵对象,reference存放于stack中,可以独立存在;
2。数据存放的地方:
a.registers:最快的方式,数量有限,由编译器分配。java不在此存放数据。
b.stack:快,有效率,但数据大小和生命周期必须是已知的。java中reference和primitive存放于此中。
c.heap:灵活,慢.java中所有对象存放区域。
d.static storage:在固定的位置,数据在整个程序运行期间都能访问到。java中某些全局变量存放于此。
e.constant storage:常量值通常直接放在程序中。
f.non-RAM storage:数据独立于程序。streamed object和persistent object。
3.BigInteger和BigDecimal进行高精度运算。
4.java数组会进行自动初始化和边界检查。创建对象数组的时候,实际上是创建对象的reference,reference自动初始化为null,引用值为null的reference会报错。
5.primitive在作用域中定义的变量只能用到作用域的末尾。
6.java在传递对象的时候实际上传递是reference。
7.static关键词:static存在于class中,将在内存中保存,不必实例化也能访问。即类数据和类方法。相对的是
实例变量和实例方法。static一直保存在于内存中。static数据每个类只有一个。