注释
//单行注释
/*
多行注释
*/
标识符
-
标识符由
字母, $, _ ,数字,任意字符
组成 -
首字母由
字母, $, _ ,数字
组成 -
标识符是
大小写敏感
的 -
不能使用
关键字
作为变量名或方法名
数据类型
Java 是强类型语言,必须先声明后使用
type varName 【=value】[{,varName [ =value ]}]
//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型数据
基础类型
//整形
byte num1 = 10; // 占1字节
short num2 = 20; //占2字节
int num3 = 30; // 占4字节
long num4 = 40L; // 占8字节
//Long类型要在数字后面加个L
//小数:浮点数
float num5 = 50.1F; // 占4字节
//Float类型要在数字后面加个F
double num6 = 3.1415926; // 占8字节
//字符
char name = '泷'; // 占2字节
//布尔值: 是非
boolean flag = true; // 占1位
//boolean flag = false;
//整数拓展 进制
int i2 = 0b10; // 二进制 0b
int i = 10; // 十进制
int i3 = 010; // 八进制 0
int i4 = 0x10; // 十六进制 0x 0~9 A~F
//=============================================
//浮点数拓展?银行业务怎么表示?钱
// BigDecimal 数学工具类
//=============================================
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免使用浮点数进行比较
//=============================================
//字符拓展?
//=============================================
//所有的字符本质还是数字
//编码 Unicode 2字节
JDK7新特性, 数字之间可以用下划线分割
int money = 10_0000_0000
-
位(bit):是计算机 内部数据 储存的最小单位
-
字节(byte):是计算机中 数据处理 的基本单位
-
字符:是指计算机中使用的字母、数字、字和符号
-
1B(byte,字节)= 8bit(位)
-
1KB = 1024B
-
1M = 1024KB
-
1G = 1024M
引用类型
-
类
-
接口
-
数组
类型转换
低 ----------------------------------------------------------------> 高
byte,short,char --> int --> long --> float --> double
//强制类型转换
int i = 128:
byte b = (byte)i; //
//自动类型转换
byte b = 127;
int i = b;
/*
1. 不能对布尔型进行转换
2. 不能把对象类型转换为不相干的类型
3. 在把高容量转换到低容量的时候,强制转换
4. 转换的时候可能存在内存溢出, 或者精度问题!
*/
变量
变量:就算可以变化的量!
每个变量都必须声明其类型
// 类变量
static int salary = 0;
// 实例变量:从属于对象
//如果不初始化,会采用默认值
//int:默认是0
//boolean:默认是false
//除了基本类型,其余的默认值都是null;
String str = "hell world";
public void method(){
int i = 0; // 局部变量
}
常量
常量:初始化后不能再改变值!不会变动的值
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
变量名一般使用大写字符
final 常量名 = 值;
final double PI = 3.14;
static final double PI = 3.14;
final static double PI = 3.14;
/*
修饰符,不存在先后顺序
*/
命名规范
-
所有变量、方法、类名:见名知意
-
类成员变量:首字母小写和驼峰原则:monthSalary
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母和下划线:MAX_VALUE
-
类名:首字母大写和驼峰原则:Man,GoodMan
-
方法名:首字母小写和驼峰原则:run(),runRun()
运算符
-
算术运算符 :
+, -, *, /, %, ++, --
-
赋值运算符
=
-
关系运算符 :
>, <, >=, <=, ==, !=, instanceof
-
逻辑运算符 :
&&, ||, !
-
位运算符 :
&, |, ^, ~, >>, <<, >>>
(了解) -
条件运算符
? :
-
扩展赋值运算符 :
+=, -=, *=, /=
/*
//一元运算符
a++ // 先执行代码,再自增1
++a // 先自增1,再执行代码
b--
--b
*/
/*
//二元运算符
a = 20 b = 10;
a + b = 30
a - b = 10
a * b = 200
a / b = 2
a % b = 0 // 取余
*/
/*
//逻辑运算符
a = true b = false
a && b = false // 逻辑与运算:两个变量都为真,结果才为true
a || b = true // 逻辑或运算:两个变量都为假,结果才为false
!(a && b)= true // 取反:真变假,假变真
短路运算:
&& 只判断前面的
*/
/*
A = 0011 1100
B = 0000 1101
A & B = 0000 1100 // 都是1的时候才是1
A | B = 0011 1101 // 有1的时候都是1
A ^ B = 0011 0001 // 相同为0,不相同为1
~B = 1111 0010 // 取反 0为1,1为0
效率极高!!
<< *2
>> /2
2<<3 = 16
16>>3 = 2
*/
/*
//三元运算符
// x ? y : z
// 如果x==true,则结果为y,否则结果为z
score = 80
score < 60 ? "不及格" : "及格"; // 及格
*/
/*
// 不建议偷懒
a += b; // a = a + b
a -= b; // a = a - b
*/
/*
//字符串连接符 +
a = "Hello" b = "World"
a + b = "HelloWorld"
*/
-
优先级
-
( ), [ ], { }
-
!, +, -, ~, ++, --
-
*, /, %
-
+, -
-
<<, >>, >>>
-
<, <=, >, >=, instanceof
-
==, !=
-
&
-
^
-
|
-
&&
-
||
-
? :
-
=, +=, ==, ...
包机制
-
包的本质就是文件夹
-
包语句的语法格式为:
package pkg1[. pkg2[. pkg3...]];
-
一般利用公司域名倒置作为包名; com.long.text
-
-
为了能够使用某一个包成员,需要使用
import
语句导入包
import package1[.package2...].(classname|*);
JavaDoc
-
javadoc 命令是用来生成自己的API文档
-
参数
-
@author 作者名
-
@version 版本号
-
@since 指明需要最早使用的jdk版本
-
@param 参数名
-
@return 返回值情况
-
@throws 异常抛出情况
-
先进入.java文件的目录
cmd: javadoc -encoding UTF-8 -charset UTF-8 Test.java