java基础
java基础
注释
-
单行注释:// 注释
-
多行注释:/* 注释 */
-
文档注释(文档具有功能):/**回车
/**
*@author 作者名
*@version 版本号
*@since 指明最早使用的jdk版本
*@param 参数名
*@return 返回值情况
*@throws 异常抛出情况
*/- cmd:javadoc -encoding UTF-8 -charset UTF-8(参数) java文件 (生成文档)
标识符
关键字
| abstract | assert | boolean | break | byte |
|---|---|---|---|---|
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | strictfp | short | static | super |
| switch | synchronized | this | throw | throws |
| transient | try | void | volatile | while |
标识符
public class Hello{
public static void main(String[] args){
System.out.println("Hello World!");
String student = "米线";
}
}
类名:Hello
方法名:main
变量名:student
-
只能以字母、$、_开始
-
不能用关键字
数据类型
所以变量定义后才能使用
基本类型
数值类型
-
整数
-
byte(1字节)
-
short(2字节)
-
int(4字节)
-
long(8字节)
long num = 10L;//long类型加L
二进制:0b
八进制:0
十六进制:0x -
-
浮点
-
float(4字节)
float num = 1.1F;//float类型加F -
double(8字节)
避免使用浮点数进行比较
eg:银行业务可以用BigDecimal类(数学工具类)
-
-
字符(2字节)
unicode编码:每个数字对应一个字符
System.out.println('\u0061');//a
boolean类型(布尔值)(true/false,1位)
| 转义字符 | 意义 | ASCII码值(十进制) |
|---|---|---|
| \b | 退格(BS) ,将当前位置移到前一列 | 008 |
| \f | 换页(FF),将当前位置移到下页开头 | 012 |
| \n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
| \r | 回车(CR) ,将当前位置移到本行开头 | 013 |
| \t | 水平制表(HT) (跳到下一个tab位置) | 009 |
| \v | 垂直制表(VT) | 011 |
| \\ | 代表一个反斜线字符'\' | 092 |
| \' | 代表一个单引号(撇号)字符 | 039 |
| \" | 代表一个双引号字符 | 034 |
| \0 | 空字符(NULL) | 000 |
| \ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
| \uhhhh | 1到2位十六进制所代表的任意字符 | 二位十六进制 |
引用类型
- 类
- 接口
- 数组
类型转换
低--------------------------------------------------------->高
byte,short,char -> int -> long -> float -> double
强制转换:(类型)变量名 高 -> 低
自动转换: 低 -> 高
eg:
- 不能对布尔值进行转换
- 不能把对象类型转换为不相干的类型
- 转换的时候可能存在内存溢出,精度问题
//数字之间可以用下划线分割,一般用于大数
int num = 10_000;
变量作用域
public class Hello{
String name;
int age; //实例变量:从属于类,可以不用初始化(布尔值默认false)
static double salary = 3000; //类变量
public static void main(String[] args) {
int i = 1; //局部变量:需要初始化
System.out.println(i);
Hello hello = new Hello();
System.out.println(hello.age); //实例变量需要new才能使用
System.out.println(hello.name);
System.out.println(salary); //类变量可以直接使用
}
}
常量
final double PI = 3.14;
static final double PI =3.14;
final static double PI =3.14; //final和static都为修饰符,不区分顺序
变量命名
- 一般变量:小驼峰
- 方法名:小驼峰
- 类名:大驼峰
- 常量 :大写字母、下划线(MAX_VALUE)
字符串连接符:+
int a = 10;
int b = 20;
System.out.println(""+a+b); //1020
System.out.println(a+b+""); //30
包机制
一般利用公司域名倒置作为包名(eg:com.baidu.www)