1 注释

​ 注释并不会被执行,是给写代码的人看的,因为项目结构一旦复杂,没有注释很难理解。书写注释是一个非常好的习惯。

Java注释有三种:

  • 单行注释
  • 多行注释
  • 文档中注释
//单行注释
/* 多行注释 */
//JavaDoc:文档注释 /** */
例如:
/**
* @Description HelloWorld
* @Author lucky
*/

2 标识符

关键字

abstract assert boolen break byte
case catch char class const
continue default do bouble 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
swtich synchronized this throw throws
transient try void volatile while
  • java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。

标识符注意点

  1. 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
  2. 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
  3. 不能使用关键词作为变量名或方法名
  4. 标识符是大小写敏感的
  5. 合法标识符举例:hello、$hello、_hello
  6. 非法标识符举例:1hello、-hello、#hello

3 数据类型

强类型语言

所有变量的使用要严格符合规定,所有变量都必须先定义后才能使用

Java的数据类型分为两大类

  • 基本类型(primitive type)

    • 数值类型

      整数类型:byte(1字节)、short(2字节)、int(4字节)、long(8字节)

      浮点类型:float(4字节)、double(8字节)

      字符类型:char(2字节)

    • boolean类型:占1位其值只有true和false两个

  • 引用类型(reference type)

    • 接口
    • 数组

什么是字节

  • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。
  • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示
  • 1B(byte,字节) = 8bit(位)
  • 字符:是指计算机中使用的字母、数字、字和符号。
  • 1bit表示1位
  • 1Byte表示一个字节 1B=8b
  • 1024B =1KB
  • 1024KB=1M
  • 1024M=1G

数据类型拓展

//整数拓展
int i1 = 10;//十进制
int i2 = 010;//八进制0
int i3 = ox10;//十六进制0x
//浮点数拓展
//folat  有限  离散   舍入误差   接近但不等于
//最好避免使用浮点数进行比较
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //为false
//字符拓展
char c1 = 'a';
System.out.println((int)c1);//为97
//所有的字符本质上还是数字
//编码Unicode  U0000-UFFFF
char c2 = '\u0061';
System.out.println(c2);//为a
//转义字符   \t:制表符   \n:换行符
//布尔值扩展
Boolean	flag = true;
if(flag == true)与 if(flag)意思相同

4 类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。

    低 ---------------------------------------------高
    byte,short,char -> int -> long -> float -> double
    
  • 运算时,不同类型的数据先转化为同一类型,然后进行运算。

  • 强制转换 (类型)变量名 高--------低

  • 自动转换 低--------高

  • 注意点

    1. 不能对布尔值进行转换
    2. 不能把对象类型转换为不相干的类型
    3. 在把高容量转换到低容量的时候,强制转换
    4. 转换的时候可能存在内存溢出,或者精度问题
//操作比较大的数的时候,需要注意溢出问题。
//JDK7开始新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;
System.out.println(total);//会溢出
long total2 = money*years;
System.out.println(total2);//会溢出
long total3 = money*((long)years);
System.out.println(total3);
//先把一个数转换为long,就不会溢出了。

5 变量

  • 变量:就是可以变化的量
  • Java是一种强类型语言,每个变量都必须声明其类型
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
type varName [-value] [{,varName[-value]}];
//数据类型  变量名=值;  可以使用逗号隔开来声明多个同类型变量。
  • 注意事项
    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型
    • 变量名必须是合法的标识符
    • 变量生命是一条完整的语句,因此每一个声明都必须以分号结束

变量作用域

  • 类变量
  • 实例变量
  • 局部变量
public calss Variable{
	static int allClick=0;//类变量
	String str = "hello world"; //实例变量
	public void method(){
		int i = 0;  //局部变量
	}
}

变量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
  • 所谓常量可以理解为一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变
final 常量名=值;
final double PI=3.14
  • 常量名一般使用大写字符

变量的命令规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthsalary
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

6 运算符

Java语言支持如下运算符

  • 算术运算符:+、-、*、/、%、++、--
  • 赋值运算符:=
  • 关系运算符:>、<、>=、<=、==、!= instanceof
  • 逻辑运算符:&&、||、!
  • 位运算符:&、|、^、~、>>、<<、>>>
  • 条件运算符:? :
  • 扩展赋值运算符:+=、-=、*=、/=

7 包机制

(包的本质,其实就是文件夹)

  • 为了更好地组织类,Java提供了包机制,用于区别类名的命令空间
  • 包语句的语法格式为:
package pkg1[.pkg2[.pkg3...]];
  • 一般利用公司域名倒置作为包名;
  • 为了能够使用某个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句可完成此功能
import package1[.package2...].(classname|*);

8 JavaDoc

  • Javadoc命令是用来生成自己API文档的
  • 参数信息
    • @author 作者名
    • @version 版本号
    • @since 指明需要最早使用的jdk版本
    • @param 参数名
    • @return 返回值情况
    • @throws 异常抛出情况
javadoc -encoding UTF-8 -charset UTF-8 hello.java