think in java_一切都是对象

第二章:一切都是对象

1.用引用来操作对象

每种编程语言都有自己操作内存中元素的方式;
在Java中,采用引用(reference)来操作对象,在Java语言中,一切都是对象,但是操作表示符只是对象的一个引用。
String s;   这条语句只是创建了一个引用,并没有创建一个对象
String ss = "hello work";  这里才创建了一个String对象

2.必须由你来创建所有对象

如果你创建了一个引用,那么希望它和一个新的对象关联;
一般创建使用new关键字来实现这个目的
String str = new String ("HelloWork");
2.1存储在什么地方
程序在运行的时候,对象是怎么进行安排放置的?内存如何分配?
~五大存储区
1.寄存器
最快的存储区,位置在处理器内部,但是寄存器数量有限,所以寄存器根据需求分配,你不能直接控制,也不能在程序中
感觉到它的任何存在。
2.堆栈
速度仅次于寄存器,位于通用RAM(随机访问存储),可以通过堆栈指针从处理器那里获得支持
堆栈指针向下移动,创建新的内存,若向上移动,释放内存。
java系统必须知道存储在堆栈内部所有项的
     
     
     
     
     
     
     
     
     
     
生命周期,以便向上或向下移动堆栈指针。
3.堆
一种通过的内存池,也位于RAM中,用于存放所有的java对象
堆和堆栈的不同是,编译器不需要存储的数据在堆中的生命周期,灵活性比堆栈高
但是高灵活性付出的代价是,在堆中分配和清理可能比堆栈需要更多的事件
4.常量存储
常量值一般存储在程序代码内部,这样做事安全的,因为它们的值永远不需要改变
5.非RAM存储
如果数据存储在程序之外,那么它可以不受程序的任何控制,在程序没有运行时也可以存在。
例如:
流对象
在流对象中, 对象转化成字节流,通常发送给另外一台机器
持久化对象
对象用于存放在磁盘
2.2 基本类型
基本类型大小最大值最小值包装类型
boolean   Boolean
char16 bitsUnicode0Unicode2_16-1Char
byte8 bits+127-128Byte
short16 bits+2_15-1-2_15Short
int32 bits+2_31-1-2_31Integer
long64 bits+2_63-1-2_63Long
float32 bitsIEEE754IEEE754Float
double64 bitsIEEE754IEEE754Double
void   Void
基本类型大小最小值最大值包装类型
     
     
     
     
     
     
     
     
     
2.3 java中的数组
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值