和其他高级语言类似,Java也具有以下部分

1、关键字:见下表,注意Java严格区分大小写,关键字都是小写

2、标识符:见下图

3、注释。有两种://(单行注释)和/**/(多行注释)。还有一种文档注释/** ...... */ ,注释若干行,并可以将注释提取出来写入 javadoc 文档 ,这一部分以后再详写。

4、常量和变量:都是Java中数据的保存形式,保存在内存中方便计算,名字是标识符,标识其在内存中的位置(这是Java自动完成的)。Java是强类型语言,即数据必须用类型进行标示,这样一来变量即使改变其值,也只能是同类型的值。

 1 public class var {
 2     public static void main(String[] args)
 3     {
 4         /*
 5          * 定义变量:数据类型  变量=初始值
 6          * 定义过的变量可以直接使用
 7          * 使用过的变量标识符不能重复定义,即使类型不同也不可以
 8          */
 9         byte b=-128;
10         b=127;
11         short s=-32768;
12         s=32767;
13         int i=-2147483648;
14         i=2147483647;
15         /*
16          * 注意Java中规定long型数的末尾必须加上l(小写L);
17          * float型数末尾必须加上f,否则即使在取值范围内也报错
18          */
19         long l=1234567890123l;
20         float f=2.3f;
21         double d=1.23456;
22         char c='你';
23         boolean bo=true;
24         System.out.print(b);
25         {
26             int z=9;
27             System.out.print(z);
28         }
29         /*
30          * Java中变量的范围在{}内,外部不能找到该变量。
31          * 注意即使如此也不能使用同样的标识符进行定义
32          */        
33     }
34 }
35 
36 public class test1 {
37     public static void main(String[] args)
38     {
39         /*
40          * 上面说到Java中的变量定义需要指明类型,
41          * 却又说了整数类型默认为int型,浮点类型默认为float,
42          * 这是因为除了那些指明(即用标识符标志)的数据,还有一类是直接使用的,
43          * 就像下面的1(对,就是赋值使用的1),是数据,但是没有经过定义,效果类似常量而非变量
44          * 所谓的默认类型就是指这些值的类型
45          * 所以下面的赋值过程就涉及类型的问题,其实Java会自动进行强制类型转换,见后面解释
46          */
47         byte a=1;
48         /*
49          * 类型的问题会发生在以下三个问题上:
50          * 1、两个不同类型的值进行操作(首先会调整到同一类型中,低内存->高内存,即  类型提升  ,所以 值 的类型是高内存的类型)
51          * 2、两个同类型值进行操作,但结果类型有变
52          * 一般来说,如果值的类型较高,则应使用相应的类型来保存,但是如果有需求使用低内存则可以进行  强制类型转换。
53          * 类型提升自动完成,没有害处;但是强制类型转换会将超过该类型内存的高位全部舍弃,有损精度
54          */
55         int b=5;
56         byte c=-3;
57         c=(byte)(b+c);
58         System.out.println(c);
59         byte d=127;
60         byte e=1;
61         d=(byte)(d+e);
62         System.out.println(d);
63         /*
64          *类型问题还有一个特殊问题,就是
65          *!!! 3、有变量参与的赋值,Java会将接收值的类型设为默认类型(即int和double类型)
66          *这里就涉及类型的转换,而且这是自动进行的,使用时要小心。
67         */
68         byte f=3;
69         byte g=4;
70         f=(byte)f+g;
71         System.out.println(f);
72         /*
73          * 上面说的类型问题是在数值型变量上,但是字符型变量也可以和数值型变量进行运算,默认结果为int型。
74          */
75         System.out.println((char)('你'+1));
76     }
77 }
Java变量测试

 

posted on 2015-03-26 22:03  a发愣的树熊  阅读(190)  评论(0编辑  收藏  举报