二、JAVA的数据类型和运算符,java数据类型


1、注释

(1)单行注释:与C/C++相同
(2)多行注释:同上
(3)文档注释:
1)什么是文档注释?
将我们写的一些类和方法,提取出来形成一份API文档,告诉其他人这个类或者方法的作用以及使用方法,类似VS下的帮助文档。
2)如何写文档注释?
文档注释以斜线后面紧跟两个星号开始(/**),以星号后紧跟一个斜线结束(*/),中间部分全部都是文档注释。注意,文档注释应写在类、接口、方法、成员变量、构造器和内部类之前。
3)如何提取成API文档?
通过javadoc命令可以将源代码中的文档注释提取成一份系统的API文档。该工具只会处理在类、接口、方法、成员变量、构造器和内部类之前的注释,并且javadoc命令默认只处理以public或者protected修饰的类、接口、方法、成员变量、构造器和内部类之前的注释,因为只有public或者protected修饰的内容才是希望暴漏给别人使用的内容。如果希望javadoc命令可以提取private修饰的内容的话,可以在使用javadoc命令时候增加-private选项。

2、javadoc命令的使用

(1)javadoc命令的基本用法

javadoc 选项JAVA源文件|包名

(2)javadoc对包注释的提取
包注释并不是像类、接口、方法、成员变量、构造器和内部类一样直接写在JAVA源文件中的,而是必须另外指定。通常是通过一个标准的HTML文件来提供包注释,这个文件被称为包描述文件,该文件的文件名通常是package.html,并于JAVA源文件放在一块。javadoc会制动寻找对应包的包描述文件,并提取该文件中的 < body/ >元素里面的内容。 因此Javadoc后面不但可以接源文件名还可以写包名。
(3)javadoc命令常用参数

参数 含义
-d [directory] 指定一个路径,用于将生成的API文档放到指定目录下
-windowtitle [text] 指定一个字符串,用于设置API文档的浏览器窗口标题
-doctitle [html-code] 制定一个HTML格式的文本,用于指定概述页面的标题
-header [html-code] 指定一个HTML格式的文本,包含每个页面的页眉

(4)javadoc命令常用的标记
如果希望生成更加详细的API文档,可以在文档注释中利用javadoc标记来实现

参数 含义
@author 指定JAVA程序的作者
@version 指定源文件的版本
@deprecated 不推荐使用的方法
@param 方法的参数说明信息
@return 方法的返回值说明信息
@see 用于指定交叉参考的内容,应该是类似交叉引用,一个类里面的方法和变量引用自其他的类
@exception 抛出异常的类型
@throws 抛出的异常

注:javadoc默认不会提取@author和@version两个标记的信息,如果需要提取这两个标记的信息,应该使用javadoc工具时指定-author和-version两个选项。

3、标识符和关键字

JAVA语言的标识符必须以字母、下划线(_)、美元符($)开头,后面可以跟任意数目的字母、数字、下划线和美元符。
JAVA中的所有关键字都是小写的。

4、数据类型

JAVA语言是一种强类型。即,一是所有的变量必须先声明后使用;二是指定类型的变量只能接受类型与之匹配的值。
JAVA语言类型大致分为两类:基本类型和引用类型。
(1)基本类型
1)整型
将int类型的值直接赋给一个long类型的变量,并不是说Java会把这个整数值当作long类型来处理,Java依然把这个整数值当作int类型来处理,只是因为int类型的值会自动转换到long类型。如果想让Java将数值当作long类型来处理,应在数值后面加上L。
2)字符型
Java语言使用16位的Unicode字符集作为编码方式。
3)浮点型
对于float型数值,第1位是符号位,接下来8位表示指数,再接下来的23位表示尾数;
对于double型数值,第1位是符号位,接下来11位表示指数,再接下来的52位表示尾数。浮点型默认是double类型。
正无穷大:通过Double或者Float类的POSITIVE_INFINITY表示;
负无穷大:通过Double或者Float类的NEGATIVE_INFINITY表示;
非数:通过Double或者Float类的NaN表示。
所有的正无穷大都是相等的,所有的负无穷大都是相等的,NaNcy不与任何数值相等,甚至不与NaN相等。
注:为了更加清楚的知道数值有几位,程序员可以在数值中使用下划线。
例如:int nVal = 123_456;
4)布尔型
boolean类型的数值只能是true和false,不能用0或者非0来代表,因此其他基本数据类型不可以转换成boolean。
(2)引用类型
实际上引用类型变量就是一个指针。引用类型包括类、接口和数组类型,还有一种特殊的null类型。
空类型就是null值的类型,这种类型没有名称。因为没有名称,所以不可以定义变量。这种类型只有唯一的值就是空引用(null)。
空引用只能被转换成引用类型,不能转换成基本类型,因此不要把一个null值赋给基本数据类型。

5、运算符

1)%:求余运算符。求余运算的结果不一定总数整数。如果求余运算的两个操作数中有一个或者两个都是浮点数,则允许第二个操作数是0或者0.0,只是求余运算的结果是非数。如果0或者0.0是第一操作数那么对零以外的任何数求余都将得到0或者0.0。
2)>>和>>>:对于>>而言,把操作数的二进制码右移指定的位数后,左边空出来的用符号位填充;>>>是无符号右移运算符,它把第一个操作数的二进制码右移指定位数后,左边空出来的总是用0来填充。
注:<1>对于低于int类型的操作数,总是先自动转换为int类型后再移位。
<2>对于int类型的整数移位,例如:a>>b,当b大于32的时候,会将b和32进行求余运算,得到的结果才是真正需要移动的位数。long类型的同理,只不过是需要对64进行求余运算。
3)逻辑运算符。&和&&,|和||的区别是前者不会产生短路操作,后者会产生短路操作。

相关内容

    暂无相关文章