//第二章:一切都是对象
// 1:用引用操纵对象 string s="abc"; C++中使用指针操纵对象;
// 2:必须由你创建所有对象
// 2.1:存储到什么地方 1:寄存器 2:堆栈--位于通用RAM(随机访问存储器)中,存放对象的引用。存入堆栈的内的项必须明确知道它们的声明周期
// (由高效到低效) 3:堆 一种通用的内存池(也位于RAM区) 存放所有的对象 不必知道它们的生命周期 4:常量存储:存放于代码内部或者只读ROM中
// 5:非RAM存储 存放于持久化对象中,如数据库
// 2.2:特例:基本类型 boolean char byte short int long float double void
// 基本类型不用new 存放在堆栈中,但可以使用其包装器类型,包装器类型存放在堆里。基本类型与其包装器类型可以相互转化;
// 高精度数字 BigInteger和BigDecimal
// 2.3:Java中的数组 当创建一个数组是,实际上就是创建了一个引用数组,并且每个引用都会被自动初始化为一个特定值null。一旦Java看到null,就知道这个引用还没有指向某个对象。
// 3:永远不要销毁对象~ (Java是怎样替我们完成清理工作的)
// 3.1: 作用域 由花括号的位置决定
// 3.1: 对象的作用域 Java有一个垃圾回收器,用来监视用new创建的所有对象,并辨别那些不会再被引用的对象并将其收回。
// 4:创建新的数据类型:类 class
// 4.1: 字段和方法 字段(数据成员),方法(成员函数)
// 基本成员默认值:类的成员变量若是基本数据类型,即使没有初始化,Java也会确保它获得一个默认值。
// 5:方法、参数和返回值 int x=a.fn() 这种方法调用的方式通常称为发送消息fn()给对象a。
// 5.1: 参数列表
// 6:构建一个Java程序
// 6.1: 名字可见性 工程名.包名.类名
// 6.2: 运用其他构件 import语句
// 6.3: static关键字 1:为特定域分配单一存储空间 2:即使没有创建对象,也能调用这个方法
// static方法的重要用法就是在不创建任何对象的前提下调用它。
// 7:你的第一个Java程序
// 7.1: 编译和运行
// 8:注释和嵌入式文档
// 9:编码风格
// 10:总结