Java基础学习
目录
Java基础
01.注释
注释有三种:
单行注释
-->只能注释一行文字
格式://+注释内容
多行注释
--->能注释多行文字
格式:/* +注释内容+ */
文档注释
格式:/** +注释内容 +**/
ps: 注释并不会被执行 , 书写注释是一个非常良好的习惯 平时写代码一定要注意规范
02 标识符
关键字
1)48个关键字:abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。
2)2个保留字(现在没用以后可能用到作为关键字):goto、const。
3)3个特殊直接量:true、false、null。
Java所有组成部分都需要名字。类名,变量名以及方法名都被成为标识符
注意:
-
所有标识符都应以字母(A-Z或 a-z),下划线(_)或美元($)开头
-
首字母之后可以是任何字母,下划线,美元或数字的组合
-
不能使用关键字作为变量名
-
标识符是大小写敏感的
-
可以使用中文起名,但一般不建议,也不建议使用拼音
03数据类型
-
Java是一种强类型语言。要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
基本数据
Java的数据类型分为两大类
-
基本类型
-
数值类型
-
整数类型
-
byte 占1个字节 范围:-128(-2^7)~127
-
short 占2个字节 范围:-32768(-2^15)~32767
-
int 占4个字节 范围:-2147483648(-2^31)~2147483647
-
long 占8个字节 范围:-9223372036854775808(-2^63)~9223372036854775807
使用long时一般会在数字后面加上一个L
-
-
浮点类型
-
float 占4个字节 范围:-2147483648(-2^31)~2147483647
使用float时在小数后加上一个F
-
double 占8个字节 范围:-9223372036854775808(-2^63)~9223372036854775807
-
-
字符类型
-
char 占2个字节 范围:-32768(-2^15)~32767
-
-
-
Boolean类型
-
true 占1个位(bit)
-
false 占1个位(bit)
-
-
-
引用类型
-
类
-
接口
-
数组
-
位(bit):计算机内部数据存储的最小单位
字节(byte):计算机处理数据的基本单位。一般用B表示
1个字节=8个位
1024B=1KB
1024KB=1M
1024M=1GB
1024GB=1TB
整数拓展:
二进制 以0b开头
八进制 以0开头
十六进制 以0x开头 0~9 A~F
浮点数拓展:
浮点数表示是有限的,离散的。其有舍入误差,只是一个大约数,接近但不等于
最好完全避免使用浮点数进行比较
当需要用到很大的数值时,可使用BigDecimal(数学工具类)类型来存储和比较
字符拓展:
所有的字符本质还是数字
Unicode编码,2字节,可表示0-65536
布尔值拓展:
boolean flag=true; if(flag){}; 等价于 if(flag==true){};
04 类型转换
由于Java是强类型语言,所以要进行有些运算时需要用到类型转换
级别:低------------------------------------------->高
byte,short ,char->int->long->float->double
运算中不同类型的转换为同一类型的再进行运算
强制转换 : (类型名)变量名 (低--->高)
自动转换 : 自动由高转低(高--->低)
注意:
-
不能对Boolean类型做转换
-
不能把对象类型转换成不相干的类型
-
在把高容量转换成低容量时强制转换
-
转换的时候可能存在内存溢出或者精度问题
处理大数时注意溢出问题。(JDK7 新特性:数字可以用下划线分割)
05 变量 常量 作用域
变量
-
变量就是可以变化的量
-
Java是一种强类型语言,每个变量都必须声明其类型
-
Java变量是程序种最基本的储存单元,其要素包括变量名,变量类型和作用域
-
基本格式: 数据类型 变量名 = 值;可以使用逗号来声明多个同类型变量
注意:
-
每个变量都有类型,类型可以是基本类型也可以是引用类型
-
变量名必须是合法的标识符
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
变量作用域
类变量
---->static 类中使用static
实例变量
----> 从属于对象,如果不自行初始化,这个类型的默认值为 0,0.0,布尔值默认是false,除了基本类型,其余都是null
局部变量
----> 声明周期 :方法中。使用前必须声明和初始化值。
常量
-
初始化之后不能再改变值!不会变动的值
-
格式: final 常量名 = 值 (final 为修饰符,不存在先后顺序)
-
常量可以理解为一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变
-
常量名一般使用大写字符
变量的命名规范
-
所有变量名,方法名,类名:见名知意
-
类成员变量名:首字母小写和驼峰原则 例:monthSalary 除了第一个单词,其他单词首字母大写
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母和下划线
-
类名:首字母大写和驼峰原则
-
方法名:首字母小写和驼峰原则
06基本运算符
Java语言支持如下运算符
-
算数运算符:+,-,*,/,%,++,--
-
赋值运算符:=
-
关系运算符:>,<,>=,<=,==,!=,instanceof
-
逻辑运算符:&&,||,!
-
位运算符:&,|,^,~,<<,>>,>>>
-
条件运算符: ?:
-
扩展赋值运算符:+=,-=,*=,/=
运算符基础:
前置++:先使用,后++。 后置++:先++,后使用。
逻辑与:两者都为真,才为真。
短路运算:逻辑与,若前面的逻辑判断为假,则后面的逻辑判断不会执行。
逻辑或:两者都为假,才为假
逻辑非:如果为真,则为假。如果为假,则为真。
位与:二进制位上,两位都为1,才为1
位或:二进制位上,有一位为1, 为1
位与:二进制位上,两者相同为1,相反为0
左移:*2 效率很高
右移:/2 效率很高
条件运算符:x ? y : z 若x为真,则结果为y,否则为z
优先级:()>一元运算符>算数运算符>位移运算符>关系运算符>按位与运算符>按位异或运算符>按位或运算符>逻辑运算符>条件运算符>扩展赋值运算符
注意:+也可以是字符串连接符。若加号中有一个为String类,则会把第一个String类后的其他操作数转变为String类再进行链接。
07 包机制
-
为了更好地组织类,Java提供了包机制,用于区别类名的命名空间
-
语法格式:package pkg1[. pkg2[. pkg3...]]
-
一般利用公司域名倒置作为包名 ----www.baidu.com : com.baidu.www
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用import语句完成功能
-
格式:import package1[. package2...].(classname|*);
包的本质是一个文件夹.
导入包时,使用.*---->导入包下所有的类
推荐观看:阿里巴巴开发手册
08JavaDoc
-
JavaDoc是用来生成自己的API文档的
-
参数信息:
-
@author 作者名
-
@version 版本号
-
@since 指明需要最早使用的JDK版本
-
@param 参数名
-
@return 返回值情况
-
@throws 异常抛出情况
-
-
通过命令行:javadoc 参数 java文件 : javadoc -encoding UTF-8 -charset UTF-8+文件文档名
-
通过idea:Tools-->Generate JavaDoc
-
Locale 选择地区,这个决定了文档的语言,中文就是zh_CN
-
传入JavaDoc的参数,一般这样写
-encoding utf-8 -charset utf-8
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了