JAVA编程思想读书笔记第二章

对象与引用

String s = new String("abc");

这里的s只是一个引用并不是对象,对象是通过new操作符来生成的。引用可以用来操纵对象并且可以单独存在,并不一定需要有一个对象与其关联。

内存分配

程序运行时,共有寄存器、堆栈、堆、常量存储、非RAM存储等5个地方可以存储数据,其中对象的引用存放在堆栈中,对象存放在堆中,常量直接存放在代码内部。

基本数据类型

java共有八大基本数据类型,基本数据类型不需要用new来创建,存放在堆中。
基本数据类型都具有包装器类,使得可以在堆中创建非基本对象。

char c = 'x';
Character ch = new Character(c);

其中c为一个并非是引用的“自动”变量,而ch则是对象的引用。

基本类型大小包装器类型默认值
boolean-Booleanfalse
char16bitCharacternull
byte8bitsByte0
short16bitsShort0
int32bitsInteger0
long64bitsLong0L
float32bitsFloat0.0f
double64bitsDouble0.0d

基本数据类型的变量在作为类的成员使用时,java会给它默认值使其初始化,但该方法不适应于局部变量,若类的成员是某个对象的引用则必须初始化。

static关键字

当使用new来创建对象时,java会在堆中为对象分配存储空间,此时同一个类的不同对象的字段内容不同,而用static关键字声明的字段与方法是属于类的不属于特定对象。这就使得无论创建了特定类的多少个对象,这个类中特定的static域只有一个实例,并且可以直接用类名调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值