java基础语法
1、注释(书写注释是一个非常好的习惯)
1. 单行注释:两个/表示
//我是单行注释
2. 多行注释
/*我是多行注释*/
3. 文档注释:javaDos
/**
*@Description 描述
*@Author 作者名
*@version 版本号
*@since 指明需要最早使用的jdk版本
*@param 参数
*@return 返回值情况
*@throws 异常抛出情况
*/
在命令行窗口生成Java注释文档:javados -encoding UTF-8 -charset UTF-8 源文件(java文件)
使用idea生成Javados文档:https://blog.csdn.net/q2453303961/article/details/118693918
有趣的代码注释(网上都有)
// _ooOoo_
// o8888888o
// 88" . "88
// (| -_- |)
// O\ = /O
// ____/`---'\____
// . ' \\| |// `.
// / \\||| : |||// \
// / _||||| -:- |||||- \
// | | \\\ - /// | |
// | \_| ''\---/'' | |
// \ .-\__ `-` ___/-. /
// ___`. .' /--.--\ `. . __
// ."" '< `.___\_<|>_/___.' >'"".
// | | : `- \`.;`\ _ /`;.`/ - ` : | |
// \ \ `-. \_ __\ /__ _/ .-` / /
// ======`-.____`-.___\_____/___.-`____.-'======
// `=---='
//
// .............................................
// 佛祖镇楼 BUG辟易
// 佛曰:
// 写字楼里写字间,写字间里程序员;
// 程序人员写程序,又拿程序换酒钱。
// 酒醒只在网上坐,酒醉还来网下眠;
// 酒醉酒醒日复日,网上网下年复年。
// 但愿老死电脑间,不愿鞠躬老板前;
// 奔驰宝马贵者趣,公交自行程序员。
// 别人笑我忒疯癫,我笑自己命太贱;
// 不见满街漂亮妹,哪个归得程序员?
//
// .::::.
// .::::::::.
// :::::::::::
// ..:::::::::::'
// '::::::::::::'
// .::::::::::
// '::::::::::::::..
// ..::::::::::::.
// ``::::::::::::::::
// ::::``:::::::::' .:::.
// ::::' ':::::' .::::::::.
// .::::' :::: .:::::::'::::.
// .:::' ::::: .:::::::::' ':::::.
// .::' :::::.:::::::::' ':::::.
// .::' ::::::::::::::' ``::::.
// ...::: ::::::::::::' ``::.
// ```` ':. ':::::::::' ::::..
// '.:::::' ':'````..
/**
* .::::.
* .::::::::.
* :::::::::::
* ..:::::::::::'
* '::::::::::::'
* .::::::::::
* '::::::::::::::..
* ..::::::::::::.
* ``::::::::::::::::
* ::::``:::::::::' .:::.
* ::::' ':::::' .::::::::.
* .::::' :::: .:::::::'::::.
* .:::' ::::: .:::::::::' ':::::.
* .::' :::::.:::::::::' ':::::.
* .::' ::::::::::::::' ``::::.
* ...::: ::::::::::::' ``::.
* ```` ':. ':::::::::' ::::..
* '.:::::' ':'````..
*/
/* 标准键盘布局
┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
│Esc│ │ F1│ F2│ F3│ F4│ │ F5│ F6│ F7│ F8│ │ F9│F10│F11│F12│ │P/S│S L│P/B│ ┌┐ ┌┐ ┌┐
└───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘ └┘ └┘ └┘
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
│~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BacSp │ │Ins│Hom│PUp│ │N L│ / │ * │ - │
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤
│ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ | \ │ │Del│End│PDn│ │ 7 │ 8 │ 9 │ │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┤ + │
│ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter │ │ 4 │ 5 │ 6 │ │
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐ ├───┼───┼───┼───┤
│ Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift │ │ ↑ │ │ 1 │ 2 │ 3 │ │
├─────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤ E││
│ Ctrl│ │Alt │ Space │ Alt│ │ │Ctrl│ │ ← │ ↓ │ → │ │ 0 │ . │←─┘│
└─────┴────┴────┴───────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘
*/
2、标识符
java变量名以字母,美元符,下划线开始,区分大小写
修饰符不存在先后顺序
常量:final修饰,使用大写字母表示,设定后一般不修改
命名规范
驼峰原则:除第一个单词首字母小写,其余单词首字母均大写
所有变量,方法,类名:见名知意
类成员变量;首字母小写和驼峰原则
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则
方法名:首字母小写和驼峰原则
3、关键字
java关键字大全
4、数据类型:强类型(所有变量必须先定义后使用)
基本类型
byte(1),short(2),int(4),long(8,值后面+L)
float(4,值后面+F),double(8)
char(2)用单引号
boolean(1位)
引用类型
类(String不是关键字,用双引号),接口, 数组
进制:二进制(0b),八进制(0),十六进制(0x)
最好避免完全使用浮点数进行比较
数学工具类 BigDecimal
所有的字符本质还是数字,使用Unicode
转义字符
强制转换:高->低
自动转换:低->高
不能对布尔值转换
不能把对象类型转换为不相干的类型
转换的时候可能存在内存溢出或精度问题
5、变量、常量
数据类型 变量名=值;可以使用逗号隔开来声明多个同类型变量(不建议使用)
作用域:类变量,实例变量,局部变量
public class Yss01 {
//类变量:static修饰,与类一同存在
//实例变量:从属于对象;如果不自行初始化,值就为这个类型的默认值,布尔值默认false
public static void main(String[] args) {
//局部变量:必须声明和初始化值
}
}
6、运算符
cast:转换
有long为long,有double为double,其余均为int
++在前先自增,后赋值,++在后先赋值,后自增
短路运算:与运算前半部分为假则不判断后半部分
位运算:二进制数对应位与或异或,数电和计组里的计算
左移:<<相当于*2,右移>>相当于/2
int a=10;
int b=20;
""+a+b=1020;
a+b+""=30;
x?y:z
如果x==ture,则结果为y,否则结果为z
域名倒置作为包名