一切皆对象
引用
每种编程语言都有操纵内存中元素的方式。例如C/C++之于指针
、Java之于引用
把对象看作电视机
(内存中的数据),那么引用就是遥控器
(好像句柄就是这种概念:通过引用来操作对象)
- 独立存在:引用可以独立存在例如String s,定义一个字符串引用。但是发消息给这个未分配对象的引用,会出现运行时异常。
对象存储区域
- 堆:大部分对象存储在RAM上的堆中
- 栈:基本类型会存储在RAM上的栈上
- 静态存储区域ROM: 常量值存储的地方
- 非RAM:
持久化对象
和流对象
的概念,不局限于内存中存储
特例:基本类型--可移植性
创建非引用
的自动变量,存储于栈上。高效
基本类型所占空间的大小不随硬件架构改变而改变,所以体现了java程序可移植性的特点
类的成员是基本类型的,都有默认的初始值
发消息给对象
方法的调用,在面向对象编程中可以看作发消息给对象
向对象a发送消息f()
a: 对象
f(): 消息
int x = a.f()
参数
参数实际上就是引用
网友评论