zoukankan      html  css  js  c++  java
  • 《java编程思想》P22-P37(第二章一切都是对象)

    1.JAVA操纵的标识符实际上是对象的一个“引用”;如String s;里的s是String类的引用并非对象。

    2.程序运行时,有五个不同的地区可以存储数据。

    (1)寄存器:最快的存储区,数量有限,按需分配,你不能直接控制

    (2)堆栈:java对象引用存在这,对象并不在这;基本类型

    (3)堆:用于存放所有的java对象,在这里进行存储分配和清理可能比在堆栈进行 需要更多时间

    (4)常量值通常直接放在程序代码内部。但java里常量字符串放在字符串池(在方法区)

    (5)持久化,程序之外的地方

    3.基本类型位于堆栈

    4.java每种基本类型所占存储空间大小(不随平台而改变),8bit是一个字节

    基本类型 大小
    char 16bit(2个字节)
    byte 8bit(1个字节)
    short 16bit(2个字节)
    int 32bit(4个字节)
    long 64bit(8个字节)
    float 32bit(4个字节)
    double 64bit(8个字节)
    boolean -
    void -

    boolean大小没明确指定,仅定义为能取字面值true或false

    5.java会确保数组初始化(源码里..以少量内存开销及运行时的下标检查为代价换来安全和效率的提升)

    6.java神奇之处,有个垃圾回收器,用来监视用new创建的所有对象,并辨别那些不会再引用的对象,随后释放这些内存空间。

    7.类的基本数据成员会默认初始化

    基本类型 默认值
    boolean false
    char ‘u0000’(null)
    byte (byte)0
    short (short)0
    int 0
    long 0L
    float 0.0f
    double 0.0d
    8. 方法名和参数列表(它们合起来被称为”方法签名”)唯一的标识出某个方法. 

    9.java.lang这个包是默认导入所有java文件的

  • 相关阅读:
    qmake杂
    Qt界面风格设置
    qss使用详解
    QT数据库操作
    Qt语言家的简单使用
    c++11之右值引用和std::move
    c++11之类型萃取type_traits
    c++11之std::bind和function
    c++11之lambda
    vue中input输入框无法输入
  • 原文地址:https://www.cnblogs.com/chz-blogs/p/9381032.html
Copyright © 2011-2022 走看看