Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

JAVA系列讲座1(基础篇之JAVA语法)

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  在以后的一段时间里,我以专题的方式系统地介绍JAVA的编程技术和企业应用策略,我讲述的内容建立在JAVA2.0基础上。如果没有特殊的声明,则缺省的调试环境是JB4(JDK1.3)。如果在其它版本上有任何问题,请自行调试或与我联系。最后,我将以一个典型的应用的整体方案、模块设计和源代码的分析结束。希望大家能够喜欢。

  JAVA系列讲座(一)

  基础篇之JAVA语法

  语法涉及的内容包括:标识符、常量、关键字、语句、代码块、注释、表达式和运算符等。

  标识符

  JAVA对标识符的限制有:

  ·所有的标识符必须以字母、下划线或$开始;

  ·标识符可以包含数字,但是不能以数字开头;

  ·标识符不能包含空白(、空格、换行符或回车符);

  ·标识符是大小写敏感的;

  ·JAVA关键字不能作为标识符。

  注:因为一些C程序的库名是用下划线或美圆符开头的,所以在JAVA程序中最好避免用这些字符开头(当然我也没有见过谁有这个偏好)。这是因为向程序中导入C程序库时可能造成名字的冲突或混乱。

  下面是标识符命名的建议规范:

  标识符类型 常规命名规范

  类 每个单词的首字母都大写

  函数 第一个字母小写,其它单词首字母大写

  变量 第一个字母小写,其它单词首字母大写

  常量 所有字母大写,单词间使用下划线连接

  数据类型

  JAVA中,常量可以是数值(整数或浮点数)、布尔值、字符或字符串。下面是这些数据类型的基本描述:

  类型 描述 缺省

  Boolean 具有两个值,true和false False

  Byte 8位符号整数 (byte)0

  Short 16位符号整数 (short)0

  Char 16位无符号整数 0

  Int 32位符号整数 0

  Long 64位符号整数 0

  Float 使用IEEE754-1985标准(范围大约在-1039到1033之间)的32位单精度浮点数 0

  Double 使用IEEE754-1985标准(范围大约在-10317到10317之间)的64位双精度浮点数 0

  整型

  整型可以表示成十进制(decimal)、十六进制(hexadecimal)、和八进制(octal),其中,十六进制数以0X或0x开头,八进制以0开头。整型可以存储成byte、short、int或long。

  注意:如果某个创建的数大于上面所示的范围时,系统可能不会产生溢出或异常,而是用它的补码值作为运算的结果(以byte类型为例:127+9=-120)。但是,如果定义整型常量时超过范围,编译器报错。

  浮点型

  浮点型是带有小数点、斜线(/)或指数的数(如1.23456e+2)。

  浮点数可以有四个特殊的状态:

  负无穷大

  正无穷大

  零

  非数

  这些状态是IEEE754-1985标准要求的,这是出于对数字滚动的考虑。例如,对最大的浮点数执行加1将导致正无穷大。

  注意:定义浮点常量时,系统默认为double型,如果希望将某个常量定义成单精度的浮点数,则要在数后面加f或F。

  字符型

  JAVA采用Unicode字符编码详细资料请参见www.unicode.org,字符可以当作一个16位的整数来看待,字符常量用单引号括起来。在讨论字符时,不可避免地要涉及转义序列(Escape Sequence),通过转义序列可以表示特殊的控制字符和不能打印的字符,它通过一个反斜线()跟一个字符来表示,下面是转义序列的总结:

  字符 转义序列

  反斜线

  退格 

  回车

  继续

  双引号 "

  换页 f

  TAB

  八进制字符 DDD

  单引号 ‘

  Unicode字符 uHHHH

  注:有些国内的翻译资料称转义序列位逃逸序列,很可笑。

  字符串

  字符串是一个字符序列,字符串常量用双引号括起来。在C/C++中,字符串用一个字符数组来表示,但在JAVA中,字符串引用String或StringBuffer类进行处理。这就是说,字符串是以对象的方式存储的。

  数组

  数组元素可以是任何类型:基本类型、组合类型或用户自定义的类。下面是数组声明的几种模式:


int studentID[];
char[] grades;
float coordinates[][];

  数组声明中要注意:

  数组的大小没有指定;

  []可以在标识符后面,也可以在数据类型后面。

  前面的声明中,系统实际上并未为数组分配内存,要为数组实际分配内存,必须使用new运算符。

  注:可以对照C中的malloc()或C++中的new来理解JAVA中的new。

  声明数组的例子:


long primes[]=new long[10000]; //声明数组并为其分配内存
long evenPrimes[]=new long[1]; //这也是一个数组
evenPrimes[0]=1; //为数组元素赋值
long fibonacci[]={1,1,2,3,5,8,13,21,34,55,89,144}; //隐含new声明
long blackFlyNumber=new long[2147483647]; //声明数组,默认值null
long hanoiTower[][]={{10,9,8,7,6,5,4,3,2,1},{},{}};
//声明二维数组并赋值
long threeDTicTacToe; //初始化三维数组

  类型转换

  要转换一个变量的类型,只需将目标类型象参数一样用括号括起来,放在变量标识符的前面就可以了,如:


float f=(float) returnInt();

  有些资料中还涉及的隐式转换。例如:


if(3>‘a‘){
         //do something
}


 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Java调试教程--Jikes概述   下一篇:JAVA系列讲座2(基础篇之面向对象编程)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章