欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java编程思想-读书笔记(一切都是对象)

程序员文章站 2024-03-17 18:23:46
...

尽管JAVA基于C++,但相比之下,JAVA是更纯粹的面向对象程序设计语言

2.1 引用操纵对象

Java将一切视为对象,但操纵的标识符实际上是对象的一个引用,想操纵一个词或一个句子,可创建String引用
String s;
此处创建的只是引用,而不是对象,如果向String发送消息,会返回运行时错误。因此安全做法是,创建一个引用的同时便初始化,字符串可用带引号的文本初始化
String s=”sadasg”

2.2 必须由你创建所有对象

一旦创建了引用,就希望它与一个新的对象关联,通常用new操作符来实现这一目的,new关键字意思:给我一个新对象。前例可改为

 String s =new String("sadasg")

存储数据的位置

  1. 寄存器。最快的存储区,位于处理器内部,但数量有限,寄存器根据需求进行分配。不能直接控制,也不能在程序中感觉寄存器存在的迹象
  2. 堆栈。 位于通用RAM(随机访问存储器),通过堆栈指针可从处理器处获得支持,指针下移,分配新内存,指针上移,释放内存,快速有效的分配存储方法,仅次于寄存器,java系统必须知道存储在堆栈内所有项的生命周期,以便移动堆栈指针
  3. 堆。 一种通用的内存池(位于RAM),用于存放所有的java对象,堆不同于堆栈的好处,编译器无需知道存储数据存活多久,具有很大的灵活性。需要对象时,只用new写一行代码,执行代码时,自动到堆里存储分配。用堆进行存储分配和清理比堆栈存储分配需要更多的时间。
  4. 常量存储。 常量值直接存放在程序代码内部,有时,嵌入式系统中,常量本身会与其他部分隔开,这种情况可存放ROM(只读存储器中)。
  5. 非RAM存储 数据完全存活在程序之外,可不受程序的任何控制,在程序未运行也可以存在。基本例子:流对象,持久化对象。
    流对象:对象转化为字节流,被发送到另一台机器
    持久化对象:对象存放在磁盘上

基本类型
对于该类型,不用New创建变量,而是创建一个并非引用的自动变量,变量直接存储值,并置于堆栈中。
java要确定每种基本类型所占存储空间的大小,这种存储空间的不变性是Java程序比用其他大多数语言编写的程序更具有移植性的原因之一java编程思想-读书笔记(一切都是对象)

所有数值类型都有正负号,boolean类型所占存储空间大小没有明确指定,仅定义为true或false

相关标签: java