Java基础语法
1 注释
-
单行注释 //
-
多行注释 /* */
-
文档注释 JavaDoc/** */
2 标识符
关键字
Java语言中类名、变量名、 方法名统称为标识符
- 所有标识符都以字母,美元符 $,下划线 _ 开始
- 首字符之后可以是字母、美元符、下划线或数字的任意字符组合
- 不能使用关键字作为变量名/方法名
- 标识符是大小写敏感的
- 可以使用中文,但不建议使用,也不建议使用拼音,不规范
3 数据类型
Java属于强类型语言:要求变量的使用严格符合规定,所有变量都必须先定义后才能使用(安全性高,速度变慢)
还有弱类型语言,与之相反
1)基本数据类型(primitive type)
①数值类型
1整数类型
-
byte占1个字节范围:-128-127,8位
-
short占2个字节范围:-32768-32767,16位
-
int占4个字节范围,32位(最常用)
-
long占8个字节范围,64位(long num = 30L,后加L用于区分)
整数拓展:
二进制 0b ;八进制 0 ;十进制;十六进制 0x (0-9,A-F);
2浮点类型
-
float占4个字节(float num = 50.1F,后加F用于区分,有限,舍入误差)
最好完全使用浮点数进行比较
-
double占8个字节
浮点数拓展
数学工具类:bigDecimal
3字符类型
-
char占2个字节
字符拓展
强制转换(int)char c1
所有的字符本质还是数字
编码 Unicode 表(ASCII码 97=a,65=A)2字节 0-65536 =2^16
U0000-UFFFF
转义字符
转义字符 功能 \t 水平制表符(HT) \n 换行 \a 响铃(BEL) \b 退格(BS),将当前位置移到前一列 \f 换页(FF),将当前位置移到下一页开头 \r 回车(CR),将当前位置移到本行开头 \v 垂直制表(VT) \\ 字符\ \0 空字符
②boolean类型
占1位,true/false
布尔值扩展
boolean flag = true;
if(flag){}//即表示if(flag == true){}
//Less is more!
2)引用数据类型(reference type)
- 类
- string(string name = “名字”)
- 接口(面向对象)
- 数组
4 类型转换
低------------------------------------------->高
byte,short,char --> int --> long --> float --> double
运算中,不同类型的数据先转化为同一类型,然后再进行运算
-
强制类型转换(高–>低,要避免内存溢出):(类型)变量名
-
自动类型转换(低–>高)
注意点
-
不能对布尔值进行转换
-
不要能把对象类型转换为不相干的类型
-
在把高容量转换为低容量时,强制转换
-
转换时可能存在内存溢出,或者精度问题!
-
操作比较大的数时,注意溢出问题,数字之间可以用下划线分割
int money = 10_0000_0000;//可用下划线分割
long total = money*((long)years);//注意不要溢出
-
5 变量与常量
1)变量
数据类型 变量名 = 值;
Java是一种强类型语言,每个变量都必须声明其类型!
Java变量时程序中最基本的存储单元,其要素包括变量名、变量类型、作用域。
type varName [=value][{,varName[=value]}];
//数据类型 变量名 =值;可ui使用逗号隔开来声明多个同类型的变量。
//不建议一次声明多个
变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
作用域
- 类变量:变量类型前面添加 static
- 实例变量:从属于对象,若不自行初始化,这个类型的默认值(除了基本类型,其余默认值都为null)
- 局部变量:必须声明和初始化值
public class Variable{
static int allClicks=0;//类变量
String str="hello world";//实例变量
public void method(){
int i =0;//局部变量
}
}
2)常量
类型前添加final
是一种特殊的变量,初始化后不能改变值!
常量名一般使用大写字符
final 常量名 = 值;
final double PI = 3.14;
//修饰符 不区分先后顺序
static final double PI = 3.14;
final static double PI = 3.14;
变量命名规则
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则monthSalary
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线MAX_VALUE
- 类名:首字母大写和驼峰原则
- 方法名:首字母小写和驼峰原则runRun()
6 基本运算符
- 算术运算符:+,-,*,/,%,++,–
- 赋值运算符:=
- 关系运算符:>,<,>=,<=,==,!=,instanceof
- 逻辑运算符:与 &&,或 ||,非 !
- 位运算符:与 &,或 |,非~,异或 ^,右移 >>,左移 <<,无符号右移 >>>(了解)
- 条件运算符:? :
- 扩展赋值运算符:+=,-=,*=,/=
//++,--的注意事项
int a = 1;
int b = a++;//先将a赋值给b,再自增a=a+1
int c = ++a;//先自增a=a+1,再将a赋值给c
//短路运算
int c = 5;
boolean d = (c<4)&&(C++<4);
//c<4就不满足条件,直接输出false,不执后面的语句(不执行c++的语句
<< 左移 相当于 *2
>> 右移 相当于 /2
int a = 10;
int b = 20;
a+=b; //a = a+b;
//字符串连接符 +
System.out.println(""+a+b);//输出1020
System.out.println(a+b+"");//输出30
//三元运算符
//x?y:z
//表示如果x==true,则结果为y,否则结果为z
int score = 80;
string type = score < 60 ?"不及格":"及格";
//输出为及格
很多数学运算可以借助-Math类-来实现
7 包机制
用于区别类名的命名空间
package pkg1[.pkg2[.pkg3...]];
一般利用公司域名倒置作为包名
com.huang.xxx
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包,使用"import"语句可完成此功能
import package1 [. package2..]. (classnamel*);
import com.huang.base.*;//导入这个包下所有的类
8 JavaDoc
javadoc命令时用来生成自己API文档的
/**
*@author huang
*
*/
参数信息 |
---|
@author 作者名 |
@version 版本号 |
@since 指明需要最早使用的jdk版本 |
@param 参数名 |
@return 返回值情况 |
@throws 异常抛出情况 |
CMD命令行生成javadoc文档信息
javadoc -encoding UTF-8 -charset UTF-8 Doc.java
//-encoding UTF-8 -charset UTF-8用于识别中文字符
在IDEA中生成API文档
- 新建一个文件夹,用于存放javadoc文档;
- 接下来点击IntelliJ IDEA顶部的Tools菜单,选择Generate JavaDoc选项;
- 然后在弹出的界面中我们点击Output directory输入框后面的按钮;
- 在弹出的选择文件夹界面中选择刚才新建的文件夹;
- 接下来在底部的Locale输入框配置语言和编码集,如下图所示,语言用zh_CN,代表中文;
- 然后点击确定以后我们就等待IntelliJ IDEA给我们生成JavaDoc文档即可,等到输出栏出现如下图所示的提示代表生成完毕;
- 接下来我们打开JavaDoc文件夹,找到index.html文件,点击就能看到API文档。
文章来源狂神说Java视频整理