1 Java 主类结构
包声明
一个Java程序是由若干个类组成的。
语句package Number声明该类所在的包为Number。
声明成员变量和局部变量
类的全局变量(成员变量):类的属性 声明在类体中
局部变量:方法中的属性 声明在方法体中
编写主方法
main()方法是类体中的主方法,从{开始到}结束。
public、static、void分别是main()方法的权限修饰符、静态修饰符、返回值修饰符。
Java中的main()方法必须声明为public static void。
导入API类库
Java中通过import关键字导入相关的类。
API文档是程序开发人员不可或缺的工具
2 基本数据类型
有8种基本数据类型来存储数值、字符和布尔值。
- 数值型
整数类型 byte short int long
浮点类型 float double - 字符型
- 布尔型
整数类型
十进制:不能以0开头,0除外
八进制:必须以0开头
十六进制:必须以0x或0X开头
数据类型 | 占用空间(位) | 字节 |
---|---|---|
byte | 8 | 1 |
short | 16 | 2 |
int | 32 | 4 |
long | 64 | 8 |
每种类型都有取值范围,如byte为-128~127
超出范围会出错
对于long型,若赋给的值超出int范围,则需要在数字后加L或1,表示该数值为长整数
如:long num = 2147483650L
浮点类型
数据类型 | 占用空间(位) | 字节 |
---|---|---|
float | 32 | 4 |
double | 64 | 8 |
小数默认被看作double型
若使用float则需要在后面添加F或f。
double后面D或d,可加可不加。
字符类型
- char型
字符类型char用于存储单个字符,占用16位,2字节的内存空间。
单引号' '为字符型变量
双引号" "为字符串,即使只有一个字符。
定义char字符变量
char x = 'a';
char x = 97;
二者等价
转义字符
与C中含义相同。
将转义字符赋值给字符变量时,与字符常量值一样,需要使用单引号。布尔类型
只有true和false两个值。
不能与整数类型转换。
boolen b = true;
3 变量与常量
标识符和关键字
标识符
第一个字符不能是数字
由任意顺序的字母、下划线、美元符号和数字组成,且不能是Java中的保留关键字。关键字
不可以作为标识符来使用。
声明变量
程序执行时,程序代码会加载到内存中的程序区,数据暂时存储在数据区中。
Java中允许使用汉字或其他语言文字作为变量名
如int 年龄 = 21
但建议尽量不要使用这些语言文字作为变量名。
声明常量
在Java中声明常量,除了要指定数据类型以外,还需要通过final关键字进行限定。
final常量只能被赋值一次。
final double PI = 3.1415926D;
常量名通常使用大写字母
当定义的final常量属于“成员变量”时,必须在定义时就设定它的初值,否则将会产生编译错误。
变量的有效范围
成员变量
类体中所定义的变量。
在整个类中都有效。
分为两种:
实例变量:int x = 45;
静态变量(类变量):static int y = 90;
静态变量的有效范围可以跨类,可以直接以类名.静态变量
的方式在其他类内使用。局部变量
在方法内部定义,“{”与“}”之间的代码中声明的变量,只在当前代码块中有效。
4 运算符(基本与C无二)
赋值运算符
-
算术运算符
-
自增和自减运算符
-
比较运算符
逻辑运算符
注意结合方向
&与&&的区别:
&会判断两个表达式
&&当第一个表达式为false时不去判断第二个了,直接输出结果从而节省计算机判断的次数。
- 位运算符
针对两个整形数据a、b的对应位进行逻辑运算。
按位与&
按位或|
按位取反~
按位异或^
移位操作
移位操作
可以实现整数除以或乘以2n
例如:
y<<2与y*4的结果相同;y>>1与y%2的结果相同。
左移<< 右移>> 无符号右移>>>
左移:移空部分补0
右移:如果最高位是0 ,右移空的位就填0;
如果最高位是1,则右移空的位就填1。
无符号右移:左侧被移空的高位都填入0
移位运算符适用的数据类型有:
byte short char int long
- 三元运算符
条件式?值1:值2
条件式值为true,取1,否则取2。
等价于
if …… else语句
数据类型转换
-
隐式类型转换
-
显示类型转换
代码注释与编码规范
注释
- 单行注释 //
- 多行注释
/*
注释内容
*/
多行注释中可嵌套单行注释
多行注释中不可嵌套多行注释
- 文档注释
/** 注释 */
编码规范
- 每条语句单独一行,分号结束
- 尽量每个变量的声明单独占一行
对于局部变量应在声明的同时对其进行初始化。 - Java中关键词之间的多个空格均被视作一个。
- 多加注释