# JAVA基础学习 **Repository Path**: MirageClouds/Java ## Basic Information - **Project Name**: JAVA基础学习 - **Description**: 学习JAVA - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-03-04 - **Last Updated**: 2024-04-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Java基础 ### 注释 * `//`这是单行注释 * `/**/`这是多行注释 * `/***/`这是文本注释 ### 标识符 #### 标识符键字识符: * 用于给变量、类、方法以及包进行命名的4大规则 * 必须以字母、下划线_、美元符号$开头 * 其他部分可以是字母、下划线、美元符和数字的任意组合 * 大小写敏感、且长度无限制 * 不可以是Java的关键字 * 使用规范 * 表示类名:首字母大写 * 表示方法和变量:第一个单词小写、第二个单词开始首字母大写 ### 变量 * 本质: * 代表一个可操作的存储空间,空间位置是确定的,但里面放的什么是不确定的 * 可通过变量名来访问对应的存储空间,从而操纵这个存储空间的值 * Java是一种强类型语言,每个变量都必须声明数据类型,变量的数据类型决定了存储空间的大小 * 注意: * 变量使用前必须初始化 ### 作用域 * 变量有三种类型:局部变量、成员变量(实例变量)、静态变量 * 区别: * | 类型 | 声明位置 | 从属于 | 生命周期(作用域) | | ------------------ | ------------------ | ----------- | ------------------------------------------------------ | | 局部变量 | 方法或语句块内部 | 方法\语句块 | 从声明位置开始,直到方法或语句块执行完毕,局部变量消失 | | 成员变量(实例变量) | 类内部、方法外部 | 对象 | 对象创建,成员变量跟随创建。对象消失,成员变量跟随消失 | | 静态变量(类变量) | 类内部、static修饰 | 类 | 类被加载,静态变量就有效;类被卸载,静态变量跟随消失 | * 局部变量:方法、语句内部定义的变量,使用前必须初始化 * 成员变量:方法外部、类的内部定义的变量,如果不进行初始化,它会自动初始化该类型的默认值 * | 数据类型 | 默认值 | | -------- | -------- | | int | 0 | | double | 0.0 | | char | '\u0000' | | boolean | false | * 静态变量:使用static定义,如果不自行初始化,会与成员变量同样转换该类型的默认初始值 ### 常量 * 在Java语言中,使用final来定义一个常量,且常量进行赋值后就不能被更改 * 声明格式:`final type varName = value;` * 为了更好的区分和表述,一般将1、2、3、'a'、'b'、'c'、true、false、"helloWorld"等称为字符常量,而使用final修饰的PI等称为符号变量 ### 变量和常量的命名规范 * 所有变量、方法、类名:见名知意 * 类成员变量:首字母小写和驼峰原则:monthSalary * 局部变量:首字母小写和驼峰原则 * 常量:大写字母和下划线:MAX_VALUE * 类名:首字母大写和驼峰原则:GoodMan * 方法名:首字母小写和驼峰原则:runRun() ### 基本数据类型 * 整数类型 * 占用大小: * | 类型 | 占用存储空间 | 表数范围 | | ----- | ------------ | ------------------------------------ | | byte | 1字节 | -2^7~2^7-1(-128~127) | | short | 2字节 | -2^15~2^15-1(-32768~32767) | | int | 4字节 | -2^31~2^31-1(-2147483648~2147483647) | | long | 8字节 | -2^63~2^63-1 | * 整型常量的4种表示方式 * 十进制整数:99,-500,0 * 八进制整数,要求以0开头:015 * 十六进制整数,要求0x或0X开头:0x15 * 二进制数,要求0b或0B开头:0b01110011 * 浮点类型 * 占用大小: * | 类型 | 占用存储空间 | 表数范围 | | ------ | ------------ | -------------------- | | float | 4字节 | -3.403E38~3.403E38 | | double | 8字节 | -1.798E308~1.798E308 | * float类型又称为单精度类型,尾数可以精确到7为有效数字 * double表示这种类型的数值精度是float的两倍,又称作双精度类型,绝大部分应用程序都采用double类型 * Java浮点数类型常量表示方式 * 十进制数形式: 3.14 * 科学计数法形式:3.14e * 浮点技术不精确,不要进行比较 * 浮点数常量默认类型为double,要改成float可以在后面加上F或f * 字符型 * 占用大小:2字节 * char类型用来表示Unicode编码中的字符 * 转义字符 * | 转义符 | 含义 | | ------ | ------ | | \b | 退格 | | \n | 换行 | | \r | 回车 | | \t | 制表符 | | \" | 双引号 | | \ ' | 单引号 | | \ \ | 反斜杠 | * 字符串String类本质是char字符串组成的数组 * boolean型