Java内存分析

 

注:

变量:从本质上讲,变量其实是内存(栈)中的一小块区域,使用变量名来访问这块区域。因此,每个变量使用前必须先申请(声明),然后必须进行赋值,才能使用。

按被声明的位置划分:

  • 局部变量:方法或语句块内部定义的变量。
  • 成员变量:方法外部、类的内部定义的变量。
  • 注意:类外面(与类对应的大括号外面)不能有变量的声明。

按所属的数据类型划分:

  • 基本数据类型变量(在栈内)
  1. boolean型只用ture 和 false
  2. char型表示单个字符,用单引号括起来。

    例子:char a='a' , b='中' ;(字符可以是字母,中文,符号等等)

    char  c = '\u0061';(可用Unicode编码表示,每个字符占两个字节)

    char d = '\n';   //'\n'代表换行符      (还可以用转义字符'\'来将其后面的字符转变为其它含义)

  3. 整型变量的三种表示形式:

    十进制整数,如:12,-314,0

    八进制整数,要求以0开头,如:012

    十六进制,要求0x或0X开头,如:0x12
  4. 浮点数变量的两种表示方式:

    十进制数形式,如 3.14 , 314.0

    科学记数法形式,如 3.14e2 , 3.14E2 , 100e-2
  5. 容量小的类型自动转换为容量大的类型:byte ,short ,char ->int->long->float->double

    byte ,short ,char之间不会相互转换,他们在计算时首先转换成int型

       boolean类型不可以转换为其他数据类型

    有多种类型的数据混合运算时,系统首先自动将所有的数据转换为容量最大的数据类型,然后再进行计算。

  6. "+"运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接。

    当进行打印时,无论任何类型,都自动转为字符串进行打印。

 

  • 引用数据类型变量(在堆内)

常量:常量用字符串表示,分字符常量和字符串常量两种,值不可改变,只能够被引用。(用到final关键字)

 

posted @ 2014-12-24 11:58  闲来垂钓  阅读(134)  评论(0编辑  收藏  举报