java基础语法
重新修炼,从入门到…QAQ
1. 注释、标识符、关键字
/**
*文档描述
*/
2. 数据类型
- 什么是字节?
位(bit):是计算机 内部数据 存储的最小单位
字节(byte)B:是计算机中 数据处理 的基本单位
1B(byte) = 8 bit
字符:是计算机中使用的字母、数字、字、符号
java的数据类型分为:基本类型、引用类型
-
基本类型(primitive type):
整型 字节-byte(1字节),短整型-short(2字节),整型-int(4字节),长整型- long(8字节)
浮点型 float(4字节),double(8字节)
字符型 char(2字节)
Boolean型 (1位)值只有true和false
-
引用类型(reference type):
类、接口、数组、String(String是一个类 0.0)
-
基本类型和引用类型的区别
- 存储位置
- 基本类型: 在方法中定义的非全局基本数据类型变量的具体内容是存储在栈中的
- 引用类型:其具体内容都是存放在堆中的,而栈中存放的是其具体内容所在堆内存的地址。
- 传递方式
-
基本类型:在方法中定义的非全局基本数据类型变量,调用方法时作为参数是按数值传递的 即具体值。
-
引用类型:引用数据类型变量,调用方法时作为参数是按引用传递的 即传递存放着具体内容的堆地址。如下都指向同一个地址:
-
拓展
1.整数
二进制0b :0b10
八进制0开头:010
十六进制0x开头:0x12
2.浮点数:特点 有限、离散、舍入、接近但不等于
so 最好避免使用浮点数进行比较
银行业务用 BigDecimal 数学工具类 表示钱
3.字符本质还是数字
4.Boolean
boolean flag = ture;
if(flag){} -
数据类型转换
-
强制转换:(要转类型)数值 例:(long)100
-
自动转换:类型容量低的可以自动转换成高的
不同类型数据要先转换成同一类型,才能进行运算 -
低---------------------------------------------------->高(类型容量)
-
byte,short,char,int,long,float,double
-
注意点
1.不能对布尔值进行转换
2.不能转换为不相干的类型
3.高转低需要强制转换
4.强制转换时可能存在内存溢出,或者精度问题
内存溢出解:先转换类型再计算
-
3. 变量 常量 作用域
-
变量
-
自己定义,值可以变化的量 ==变量,是程序最基本的存储单位,要素包括:变量名、变量类型、作用域
-
变量必需要声明数据类型,
-
type + 变量名; 例:int i = 0;
-
类变量 作用域在类中 从属于类 使用static关键字
-
实例变量 从属于对象(对象的属性)
-
局部变量 作用域在方法内
-
-
常量
- 定义出来后值不会变的 ==常量
- 常量名使用大写字母
- 修饰符 final
-
例:final 常量名 = 值; final double AI= 3.14;
-
变量名命规范 (驼峰法)
1.变量名: 首字母小写+驼峰原则 lastName
2.常量:大写字母和下划线 MAX_VALUE
3.类名:首字母大写+驼峰
4.方法名:首字母小写+驼峰
5.包名: 小写单词用‘.’分隔
4. 运算符
-
自增、自减、Math计算工具类
++ –
a++ :先赋值再加
++a:先加再赋值 -
逻辑运算符
与&&、或||、非!
&&短路:当前面的条件false时,不会再执行后面的判断 -
位运算符(效率高)
0000 0000
与&, 或 |,取反~
位移运算符: << 相当于 *2,>> 相当于 /2例:2<<3 = 16
0000 0010 = 2
0001 0000 =16 -
三元运算符
a+=b ----> a=a+b
连接符 “+”
三元运算符 ?:例:x ?y :z
如果x为ture,则结果为y,否则为z
javaDoc
javadoc用来生成开发API文档
cmd命令:javadoc -encoding(编码) UTF-8 -charset(字符集) UTF-8 文件名.java
idea生成API:文件夹右键选择Generate javaDoc,utf8防止乱码
- 常用参数:
- @author 作者名
- @version 版本号
- @since 指明最早使用的jdk版本
- @param 参数名
- @return 返回值情况
- @throws 异常抛出情况