Think in java 不少人推荐这本书,之前一直接触的都是C++和C对java来说也是新手一个,先从Think in java这本书开始恶补一下基础知识。
第1 章 对象入门

这章没什么好说的了,面向对象的一些基础概念,抽象,接口,继承,对象类的权限控制,集合,多线程编程,web,客户端编程和服务器编程。整体的介绍java的一些知识。

第二章 一切都是对象

1.  所有对象都必须创建

简单例子

String s = new String("asds");

2. Java 内存分配

  •  寄存器

             寄存器变量速度最快,但是容量有限

  • 堆栈

           驻留于常规RAM(随机访问存储器)区域,但可通过它的“堆栈指针”获得处理的直接支持

  •  堆

          一种常规用途的内存池(也在RAM 区域),其中保存了Java 对象

  •  静态存储

           这儿的“静态”(Static)是指“位于固定位置”(尽管也在RAM 里。static变量同c++中静态全局的变量,程序运行期间随时都可以调用。

  •  常数存储

          常数值通常直接置于程序代码内部。

  •  非RAM 存储

       数据完全独立与程序之外。如在磁盘上的数据。

3. 主要数据类型

Java 决定了每种主要类型的大小。就象在大多数语言里那样,这些大小并不随着机器结构的变化而变化。 所以平台可移植性性强

  • boolean   1 位 - - Boolean
    char          16 位 Unicode 0 Unicode 2 的16 次方-1 Character
    byte           8 位 -128 +127 Byte(注释①)
    short         16 位 -2 的15 次方 +2 的15 次方-1 Short(注释①)
    int              32 位 -2 的31 次方 +2 的31 次方-1 Integer
    long          64 位 -2 的63 次方 +2 的63 次方-1 Long
    float          32 位 IEEE754 IEEE754 Float
    double     64 位 IEEE754 IEEE754 Double

高精度的计算:BigInteger 和BigDecimal 在计费涉及到钱的计算就特别重要了


4.绝对不要清除对象

  这个和c、c++巨大的区别所在,Java有自己的垃圾回收机制,不需要程序员去干预,大大简化了编程复杂度。

5.字段和方法

class 里面两种类型的元素:数据成员(字段)和成员函数(方法),

主类型成员的默认值

  • Boolean false
  • Char         '\u0000'(null)
  • byte           (byte)0
  • short         (short)0
  • int              0
  • long          0L
  • float          0.0f
  • double     0.0d

对于以上主类型的成员,即使不显示的初始化,將取其默认值。