《Java 编程思想》 学习笔记2

《Java 编程思想》 学习笔记2

第二章 一切都是对象

2.1 用引用操纵对象

  1. 在Java里,一切都是对象,操作的标识符是对象的一个“引用(reference)”。可以类比遥控器与电视机,遥控器是引用,实际操作的是电视机。

2.2 必须由你创建所有对象

  1. 一旦创建了一个引用,就希望 它能与一个新的对象相关联。可以使用 new 关键字进行操作实现。
2.2.1 存储到什么地方
  1. 寄存器
  2. 堆栈
  3. 常量存储。常量值常常放在代码内部,这样做是安全的,因为这样可以保证不被改变。在嵌入式系统中,常量会与程序分开存放,这时,常量往往存储在 ROM 中。
2.2.2 特例:基本类型
  1. 这些类型之所以特殊,是因为一般的变量使用关键字 new 创建后,会存储在堆(malloc)中,所以用 new 创建小的,简单的变量不是很高效。所以,对于这些类型,java 存储其在堆栈中,更加高效。
  2. 类型包括:boolean / Boolean, char / Character, byte / Byte, short / Short, int / Integer, long / Long, float / Float, double / Double, void / Void.
  3. 高精度数字:Java 提供了两个高精度计算类:BigIntegerBigDecimal
2.2.3 Java 中的数组

2.3 永远不需要销毁对象

2.3.1 作用域
2.3.2 对象的作用域
  1. Java 对象不具备和基本类型一样的生命周期,当用 new 创建一个 java 对象时,它可以存活于作用域之外,所以加入你采用代码。引用 s 在作用域终点就消失了,然而,s指向的 string 对象仍然占据内存空间。在这一小段代码之后,我们无法在这个作用域之后访问这个对象,因为它唯一的引用已经超出了作用域的范围。
  2. Java 存在一个内存回收器
{
    String s = new String("a string");
} // end of scope

2.4 创建新的数据类型:类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值