Java基础
注释
- 平时我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了
- 注释并不会被执行,是给我们写代码的人看的
- 书写注释是一个非常好的习惯
Java中的注释有三种
- 单行注释
- 多行注释
- 文档注释
public class HelloWorld {
//类
public static void main(String[] args) {
//方法
String people = "空白名Tee"; //定义变量
System.out.println("Hello,World!"); //输出Hello,World!
}
//有趣的代码注释
/***
* _ooOoo_
* o8888888o
* 88" . "88
* (| -_- |)
* O\ = /O
* ____/`---'\____
* . ' \\| |// `.
* / \\||| : |||// \
* / _||||| -:- |||||- \
* | | \\\ - /// | |
* | \_| ''\---/'' | |
* \ .-\__ `-` ___/-. /
* ___`. .' /--.--\ `. . __
* ."" '< `.___\_<|>_/___.' >'"".
* | | : `- \`.;`\ _ /`;.`/ - ` : | |
* \ \ `-. \_ __\ /__ _/ .-` / /
* ======`-.____`-.___\_____/___.-`____.-'======
* `=---='
*
* .............................................
* 佛祖保佑 永无BUG
*/
//多行注释 /* 注释 */
/*
我是多行注释
我是多行注释
我是多行注释
*/
//JavaDoc:文档注释 /** 注释 */
/**
* @Description Hello,World
* @Author 空白名Tee
*/
}
标识符
-
关键字
Java所有的组成部分都需要名字;类名、变量名以及方法名都被称为标识符
abstract assert boolean break byte case catch char class const continue default do double 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 switch synchronized this throw throws transient try void volatile while
关键字 含义 abstract 表明类或者成员方法具有抽象属性 assert 断言,用来进行程序调试 boolean 基本数据类型之一,声明布尔类型的关键字 break 提前跳出一个块 byte 基本数据类型之一,字节类型 case 用在switch语句之中,表示其中的一个分支 catch 用在异常处理中,用来捕捉异常 char 基本数据类型之一,字符类型 class 声明一个类 const 保留关键字,没有具体含义 continue 回到一个块的开始处 default 默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现 do 用在do-while循环结构中 double 基本数据类型之一,双精度浮点数类型 else 用在条件语句中,表明当条件不成立时的分支 enum 枚举 extends 表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口 final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量 finally 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 float 基本数据类型之一,单精度浮点数类型 for 一种循环结构的引导词 goto 保留关键字,没有具体含义 if 条件语句的引导词 implements 表明一个类实现了给定的接口 import 表明要访问指定的类或包 instanceof 用来测试一个对象是否是指定类型的实例对象 int 基本数据类型之一,整数类型 interface 接口 long 基本数据类型之一,长整数类型 native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的 new 用来创建新实例对象 package 包 private 一种访问控制方式:私用模式 protected 一种访问控制方式:保护模式 public 一种访问控制方式:共用模式 return 从成员方法中返回数据 short 基本数据类型之一,短整数类型 static 表明具有静态属性 strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循[IEEE 754](https://baike.baidu.com/item/IEEE 754)算术规范 super 表明当前对象的父类型的引用或者父类型的构造方法 switch 分支语句结构的引导词 synchronized 表明一段代码需要同步执行 this 指向当前实例对象的引用 throw 抛出一个异常 throws 声明在当前定义的成员方法中所有需要抛出的异常 transient 声明不用序列化的成员域 try 尝试一个可能抛出异常的程序块 void 声明当前成员方法没有返回值 volatile 表明两个或者多个变量必须同步地发生变化 while 用在循环结构中 ——[百度百科](java关键字_百度百科 (baidu.com))
标识符注意点
- 所有的标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线(_)开始
- 首字符之后可以是字母(A-Z或者a-z),美元符($),或者下划线(_)或数字的任何字符组合
- 不能使用关键字作为变量名或方法名
- 标识符是大小写敏感的
- 合法标识符举例:age、$salary、_value、__1_value
- 非法标识符举例:123abc、-salary、#abc
- 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音
ctrl+d快速复制当前行
数据类型
-
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
弱类型语言
-
Java的数据类型分为两大类
- 基本类型(primitive type)
- 引用类型(reference type)
public class Demo02 { public static void main(String[] args) { //整数 int num = 10; //最常用 byte num1 = 20; short num2 = 30; long num3 = 30L; //Long类型要在数字后面加个L //小数:浮点数 float num4 = 50.1F; //float类型要在数字后面加个F double num5 = 3.1415926; //字符 char name = '我'; //字符串,String不是关键字,它是一个类 String namea = "我真厉害"; //布尔值 boolean flag = true; //或boolean flag = false; } }
数据类型扩展
-
整数拓展
二级制0b开头,八进制0开头,十六进制0x开头
public class Demo03 { public static void main(String[] args) { //整数拓展 进制:二进制0b开头,八进制0开头,十进制,十六进制0x开头 int i = 10; //十进制 int i1 = 0b10; //二进制 int i2 = 010; //八进制0 int i3 = 0x10; //十六进制0x 0~9 A~F System.out.println(i); System.out.println(i1); System.out.println(i2); System.out.println(i3); } }
看一下运行结果,不同进制表示的数是不一样的
-
浮点数扩展
银行的业务怎么表示?
Java中,浮点数是存在问题的,做个实验验证一下,看一下结果
public class Demo04 { public static void main(String[] args) { float f = 0.1F; //0.1 double d = 1.0/10; //0.1 System.out.println(f==d);