注释
Java中的注释有三种:
1. 单行注释
//这是一条注释单行注释
2. 多行注释
/*
这是多行注释
*/
3. 文档注释
/***
* @deprecated 描述
* @author 作者
*/
标识符
-
关键字:Java的所有组成部分都需要名字。类名、变量名以及方法名都被称为标识符
-
标识符注意点:
- 所有的标识符都应该以字母(A-Z或a-z),美元符($),下划线(_)开始
- 首字符之后可以是字母(A-Z或a-z),美元符($),下划线(_)或数字的任何字符组合
- 不能使用关键字作为变量名或方法名
- 标识符是大小写十分敏感的
- 不用中文,不用拼音
数据类型
基本数据类型:
public class HelloWorld {
public static void main(String[] args) {
//八大基本数据类型
//整数:
int num1 = 10;//最常用
byte num2 = 127;
short num3 = 40;
long mum4 = 30L;//Long类型要在数字后面加L便于区分类型
//小数:浮点型
float num5 = 50.1F;//Float类型要在数字后面加F便于区分类型
double num6 = 3.14;
//字符
char name = '张';
//字符串
String namea = "中国";//注意,String没有高亮,不是关键字,它是类
//布尔值
boolean flag = true;
boolean flag2 = false;
}
}
注意:
- 不能对boolean值进行转换
- 不能把对象类型转换为不相干的类型
- 在把高容量转换为低容量的时候,强制转换;反之自动转换
- 转换的时候可能存在内存溢出,或精度问题
引用数据类型:
类型转换
- 运算中,不同类型的数据先转化为同一类型,然后进行运算
强制转换:
public class 类型转换 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;//内存溢出
//强制转换 (类型)变量名 高-->低
System.out.println(i);
System.out.println(b);
}
}
输出结果:
128
-128
- 自动类型转换:
public class 类型转换 {
public static void main(String[] args) {
int i = 128;
double b = i;
//自动转换 低-->高
System.out.println(i);
System.out.println(b);
}
}
输出结果:
128
128.0
变量、常量
Java是一种强类型语言,每个变量都必须声明其类型
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量必须是合法的标识符。
- 变量声明是一条完整的语句,因此每个声明都必须以分号结束。
- Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域
实例变量
public class Demo01 {
/*实列变量:从属于变量,如果不自行初始化,这个类型的默认值为:
ine:0,String:null,布尔值:false (除了基本类型,其余的默
认值都是null)*/
String name;
int age;
public static void main(String[] args) {
// 变量类型 变量名 = new Demo01();
Demo01 demo01 = new Demo01();
System.out.println(demo01.age);
System.out.println(demo01.name);
}
}
类变量
public class Demo02 {
static double salary = 2500;
public static void main(String[] args) {
System.out.println(salary);
}
}
常量
- 初始化后不能再改变值
- final 常量名 = 值
- 常量名一般使用大写字符
public class demo03 {
//修饰符,不存在先后顺序
static final double PI = 3.14;
public static void main(String[] args) {
System.out.println(PI);
}
}
变量名的命名规范
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
运算符
取余(模运算)
public class Demo04 {
public static void main(String[] args) {
//取模(取余)
int a = 10;
int b = 20;
int c = 21;
System.out.println(c%a); // c / a 21/20......1
}
}
输出结果:1
自增(自减同理)
public class Demo05 {
public static void main(String[] args) {
int a = 3;
int b = a++;//先给b赋值,再自增
int c = ++a;//先自增,再给b赋值
System.out.println(b);
System.out.println(c);
}
}
输出结果:
3
5
幂运算
用Math工具类(提供了很多特殊的运算)
public class Demo06 {
public static void main(String[] args) {
double pow = Math.pow(2,3);
System.out.println(pow);
}
}
输出结果:8.0
短路运算
public class Demo07 {
public static void main(String[] args) {
//逻辑运算符
//短路运算
int c = 5;
boolean d = (c<4)&&(c++<4);
System.out.println(d);
System.out.println(c);
}
}
输出结果:
false
5(说明&&后面的没有执行,短路了)
位计算
public class Demo08 {
public static void main(String[] args) {
/*位计算
2 * 8 = 16;//2*2*2*2.......(底层很复杂,效率低)
位运算(直接跟底层打交道,效率极高!!!):
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16
<< 左位移 :*2
>> 右位移 :/2
*/
System.out.println(2<<3);
}
}
输出结果:16
三元运算符
public class Demo09 {
public static void main(String[] args) {
// X ? Y : Z
//如果X==true,则结果为Y,否则为Z
}
}
包机制
- 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间
- 一般利用公司域名倒置作为包名:www.baidu.com–>com.baidu.www
JavaDoc
JavaDoc命令是用来生成自己API文档的
执行命令:
cmd下输入 javadoc -encoding utf-8 -charset utf-8 xxx.java
接着点击生成的index.html文件