java语法

1、注释、标识符、关键字

1.1注释

单行注释://

多行注释:/* ...*/

文档注释:javaDoc /** ... */

1.2标识符

①Java所有组成部分都需要名字,类名、变量名以及方法名字都称之为标识符。

②所有标识符都只能以字母(A-Z/a-z)美元符号($)或者下划线()开始;首字母后可以是字母(A-Z/a-z)美元符号($)或者下划线(),中任意字符的组合。

③不能使用关键字作为变量名或者方法名。

④标识符大小写敏感。String man="bambam"String Man="kimJIN"是两个完全不一样的变量。

⑤标识符命名最好不要使用中文或者拼音。

1.3关键字

为类或者接口或其他起名字时不可以使用关键字的名字。

2、数据类型

强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。(Java、c、c++)

弱类型语言:不是严格要求的(js)

Java数据类型主要有两类{[基本类型]、[引用类型]}

1.1基本类型

数值类型:

整数类型(byte:占1个字节、short:占2个字节、int:占4个字节、long:占8个字节) long num=20L

进制:

二进制:0b开头、十进制八进制:0开头、十六进制:0x开头

浮点类型(float:占4个字节、double:占8个字节)float num=50.1F

float是有限、离散的,会舍入误差,所以最好完全避免使用浮点数进行比较,可以使用BigDecimal类进行银行业务。

字符类型(char:占2个字节 )字符串String 不是关键字,是一个类

boolean类型:true & false :占1个位

1.2引用数据类型

类、接口、数组

3、类型转换

运算中,不同类型的数据先转化成为同一类型,然后再进行运算。

转换过程:有低容量转换成高容量。小数的优先级高于整数。

byte,short,char,->int ->long ->float->double

强制类型转换:高容量到低容量,强制转换,会溢出/精度问题。转换方式:(类型)变量名

自动类型转换:从低到高。int i=128 ; double b=i

不能对布尔类型进行转换;不能把对象类型转换为不相干的类型;

4、变量、常量

4.1变量

Java是一种强类型语言,每个变量都必须声明类型,必须以分号结束。

局部变量,是在方法内部声明和初始化值,且只在方法内部有用。

实例变量:从属于对象(类)。如果不自行初始化值,就会有默认值(数值 0/0.0;布尔类型:false;除了基本类型其余的默认值都是 null)。

类变量:加static 从属于类,随类存亡。

4.2常量

初始化后不能再改变的值,不会变动的值。

final 常量名=值;一般全部用大写字母固定。

类名:首字母大写。

变量名、方法名:首字母小写和驼峰原则。

修饰符(static、final)不存在前后顺序。

5、运算符

5.1算术运算符

+、-、*、/、%、++、--

++/--自增自减符号 一元运算符

int a=3;int b=a++; int c=++a;

输出结果为: a=5;b=3; c=5

a++就是a=a+1;

幂运算,借助Java的工具类:求3^2:Math.pow(3,2);

5.2赋值运算符

=

5.3关系运算符

<、>、>=、<=、==、!= 、instance of()

instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法为:

boolean` `result = obj ``instanceof` `Class

5.4逻辑运算符

&&(与),||(或),!(非) 短路运算,一旦确定有假则不在判断后面。

5.5位运算符

&(两个都是1才是1)、|(有1就是会是1)、^(异或同为0,异为1)、~(取反,完全相反)、>>(右移,数字除2)、<<(左移,数字×2),左移右移效率快(如何更快的使用计算机计算2×8)、>>>

5.6条件运算符(三元运算符)

?:

x ? y :z

5.7扩展赋值运算符

+=、-=、*=、/=

字符串连接符 + 加法中只要有一端是字符串是在最前面,则整个运算都是字符串连接。

6、包机制、JavaDoc命令

6.1包机制

包的本质就是一个文件夹。解决类命名冲突。

一般以公司域名倒置命名。

通配符:.*

《阿里巴巴Java开发手册》

6.2JavaDoc命令

文档注释。

用来生成自己的API文档。

命令行控制:

javadoc -encoding UTF_8 -charset UTF-8 类名称.java