标识符、关键字和数据类型

来源:互联网 发布:中国银行外汇交易软件 编辑:程序博客网 时间:2024/06/04 23:34

1 标识符

1.1 标识符命名规则

(1)标识符只能由字母、下划线“_”、数字和字符$组成。
(2)标识符不能以数字开头。
(3)标识符不能使用关键字。

1.2 标识符命名建议

标识符命名应“见名知意”。

2 关键字

所有java关键字都是小写字母。特别注意:虽然gotoconst在java中从未使用,但是也被java作为关键字保留,也就是说使用gotoconst作为标识符,编译器也将报错。


3 常量和变量

3.1 常量

java的常量值用字符串表示,区分不同的数据类型。“常量”还被用来表示值不可变的变量(final关键字)

3.2 变量

变量相当于是内存的一个名字,使用这个名字可以访问到这块区域,每一个变量应该先申请内存(也即声明它的数据类型,声明了他的数据类型,才知道要分配多大的内存,然后为其起一个名字,这样便以访问),然后必须进行赋值(也即填充这块内存的内容)。这样才完成了一个变量的初始化过程,如果变量没被初始化,在java中允许使用。也就是说使用未被初始化的变量,编译会通不过。
变量按照声明的位置可以分为局部变量和成员变量,局部变量时方法或者语句块定义的变量,成员变量是方法外部,类的内部定义的变量(类外面不能声明变量)。变量在大括号里面定义的变量出了这个大括号就不在起作用(使用它编译器将报错)。
/* Test.java *///java为纯面向对象语言,不能在类外面定义变量//char c = 'c';public class Test {    int i = 47;//成员变量    float f =  3.14f;//成员变量    public static void main(String[] args) {        //函数参数args也为局部变量        double d = 0.618;//局部变量          if (true) {            long l = 323414L;           //l的作用与仅在这个if语句里            System.out.println(l);        }  }    public void test() {        //这里不能输出d,因为d的作用域仅用于main        //System.out.println(d);        //i和f的作用域为整个类,所以可以输出        System.out.println(i);        System.out.println(f);    }}


3.3 程序执行过程

当我们写好了一个程序,编译通过了,我们需要运行它时(例如在命令行输入java Helloworld的时候(HelloWorld为已经编译好了的class的名字)),java虚拟机会把其装载到内存区,然后找到main方法开始执行,在执行过程中,内存区分为4个区域,分别是code segment、data segment、stack和heap,代码存放在code segment中,静态变量和常量会放在data segment中,局部变量会放在stack中,而动态分配的内存(在java中可以看作时new出来的东西)则放在heap中。

4 数据类型

4.1 数据类型的划分

基本数据类型:数值型:整数类型(byte, short, int, long ),浮点类型(float, double)
 字符型(char)
 布尔型(boolean)
引用数据类型:类(class),接口(interface),数组

4.2 基本数据类型

4.2.1 布尔型boolean

只能取值true和false,不能和c语言一样用0和非0代替false和true

4.2.2 字符型char

Java字符采用Unicode16编码(Unicode是全球语言统一编码),每个字符占两个字节,因而可用十六进制编码表示。
char c = '\u0061';//\u表示使用Unicode编码

4.2.3 整数类型

Java为保证可移植性,类型有固定的表示范围和字段长度。

int i1 = 10;int i2 = 0xA;//利用10进制和16进制表示十进制10,//在内存中是一样的

Java语言的整型常量默认为int型,如需使用long型需要在long型常量后加'l'或者'L'

 4.2.3 浮点类型

Java的浮点类型默认常量是double型,如需使用float型需要在float型常量后加'f'或'F'。

0 0
原创粉丝点击