美文网首页
第二章笔记《Thinkinng in JAVA》

第二章笔记《Thinkinng in JAVA》

作者: 枫木林曦华 | 来源:发表于2016-09-04 14:47 被阅读0次

    第二章 一切都是对象

    2.1用引用操纵对象

    String s;
    创建的是引用,并不是对象

    String s = "asdf";
    JAVA 允许字符串用带引用的文本初始化

    2.2 必须由你创建所有对象

    eg. String s = new String("asdf");

    2.2.1 存储到什么地方

    • 寄存器
      • 最快的存储区
    • 堆栈
      • 堆栈指针
      • 对象引用存储在其中
      • 用于存放所有的 JAVA 对象
    • 常量存储
      • 常量值通常直接存放在程序代码内
    • 非RAM存储

    2.2.2 基本类型

    基本类型 二进制位数 包装器类型 最小值 最大值
    boolean Boolean
    char 16 Character 0 65535
    byte 8 Byte -128 127
    short 16 Short -2^15 2^15-1
    int 32 Integer -2^31 2^31-1
    long 64 Long -2^63 2^63-1
    float 32 Float IEEE754 IEEE754
    double 64 Double IEEE754 IEEE754
    void Void
    • 在堆中创建一个非基本对象
    char c = 'x' ;
    Character ch = new Character(c) ;
    

    或者

    Character ch = 'x' ;
    

    2.3 永远不需要销毁的对象

    2.3.2 作用域 scope

    {
        int x=12;
        {
            int x=4;//illegal
        }
    }
    
    • 在C/C++是合法的,但在 JAVA 中是不合法的;C/C++ 里把一个较大的作用域“隐藏”起来,在 JAVA 中是不允许的。

    2.3.2 对象作用域

    • 当用new创建一个 JAVA 对象是,它可以存活于作用域之外。
    {
        String s = new String("ssds");
    }
    

    引用s在作用域结束就消失,而s指向的String对象仍继续占用内存空间。

    2.4 创建新的数据类型

    • 当变量作为类的成员变量时,即使没有进行初始化,JAVA 会给定其默认值。
    基本类型 默认值
    boolean false
    char '\u0000'(null)
    byte 0(byte)
    short 0(short)
    int 0
    long 0L
    float 0.0f
    double 0.0d

    2.5 方法、参数和返回值

    2.6 构建一个程序

    2.6.1名字可见性

    • 域名反转,句点代表子目录的划分
      • 假如我的域名为my.net
      • 我的工具类库名可以为net.my.car.accelerator
    • 整个包名都为小写

    2.6.3 static 关键字

    静态方法只能操纵静态数据

    class StaticTest{
        static int i = 47;
    }
    
    • 引用static变量/方法可以通过对象去定位,也可以通过其类名去直接引用。
      • eg. 在main里面
    StaticTest.i++;
    

    2.7 你的第一个 JAVA 程序

    2.8注释和嵌入式文档

    /**
    *
    *@author author-information
    *@version 1.0
    */ 
    

    2.9 编码风格

    类名首字母大写,如果类名由几个单词构成(不用下划线的话),每个单词的首字母大写。

    相关文章

      网友评论

          本文标题:第二章笔记《Thinkinng in JAVA》

          本文链接:https://www.haomeiwen.com/subject/celrsttx.html