Java基础语法
个人博客:wfmiss.cn
注释、标识符、关键字
平时我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了。
注释并不会被执行,是给我们写代码的人看的
书写注释是一个非常好的习惯
注释的类型分为三种:
- 单行注释:
//
- 多行注释:
/* */
- 文档注释:用来生成说明文档(JavaDoc)。
标识符(关键字)
abstract | assrert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
enum | default | do | double | else |
continue | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
sitch | sychronized | this | throw | throws |
transient | try | void | volatile | while |
- Java所有的组成部分都需要名字、类名、变量名及方法名都被称为标识符。
标识符注意点:
- 所有标识符都应该以字母(A-Z或者a-z),美元符($),下划线(_)开始;
- 首字符之后可以是字母(A-Z或者a-z),美元符($),下划线(_)或数字的任何字符组合;
- 不能是使用关键字作为变量名或方法名。
- 标识符是大小写敏感的
- 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很LOW。
数据类型
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
弱类型语言
Java的数据类型分为两大类:
基本数据类型(Primitive Type)
- 数值类型
- 整数类型
byte【占一个字节】:-128~127
short【占2个字节】:-32768~3276
int【占4个字节】:-2147483648~214748364
long【占8个字节】:-922332036854775808~922332036854775807
- 浮点数类型
float【占4个字节】
double【占8个字节】
- 字符类型
char【占2个字节】
- Boolean类型
占1位其值只有true和false两个
//float和double类型存在的一些问题
public class Demo01 {
public static void main(String[] args) {
//浮点数拓展? 银行业务怎么表示?钱
//===========================
//BigDecimal 数学工具类
//===========================
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全使用浮点数进行比较
float f=0.1f;
double d=1.0/10;
System.out.println(f==d);//false
float d1=213213213232321f;
float d2=d1+1;
System.out.print(d1==d2);//true
}
}
引用数据类型(Reference Type)
- 类
- 接口
- 数组
类型转换
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
低---------------------------------------------->高
byte,short,char->int->long->float->double
- 运算中,不同类型的数据先转换为同一类型,然后进行运算。
- 强制类型转换
高类型---->低类型 格式:(强制转换的类型名)变量名;
- 自动类型转换
低类型---->高类型
注意事项:
- 不能把布尔值进行转换
- 不能把对象类型转换为不相干的类型
- 在把高容量转换到第容量的时候,强制转换
- 转换的时候可能存在内存溢出,或者精度问题!
变量、常量
变量什么:就是可以变化的量!
- Java是一种强类型语言,每个变量都必须声明其类型。
- Java变量是程序中最基本的存储单元其要素包括变量名,变量类型和作用域。
type VarName [=value] [{,varName[=value]}];
//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量。
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法的标识符。
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
变量作用域:
- 类变量
- 实例变量
- 局部变量
public class Variable{
static int allClicks=0; //类变量
String str="hello world";//实例变量
public void method(){
int i=0; //局部变量
}
}
常量
- 常量(constant):初始化后不能再改变值!不会变动的值。
- 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名=值;
final double PI=3.14;
- 常量一般使用大写字符。
变量的命名规范:
- 所有变量、方法、类名:见名知意;
- 类成员变量:首字母小写和驼峰命名原则:monthSalary;
- 局部变量:首字母小写和驼峰原则;
- 常量:大写字母和下划线:MAX_VALUE;
- 类名:首字母大写和驼峰原则:Man、GoodMan;
- 方法名:首字母小写和驼峰原则:run()、runRun()。
运算符
Java语言支持如下运算符:
- 算数运算符:
+
、-
、*
、/
、%
、++
、--
; - 赋值运算符:
=
; - 关系运算符:
>
、<
、>=
、<=
、==
、!=
、instanceof
; - 逻辑运算符:
&&
、||
、!
; - 位运算符:
&
、|
、^
、~
、>>
、<<
、>>>
; - 条件运算:
?
; - 扩展赋值运算符:
+=
、-=
、*=
、/=
;
三元运算符:
z=x>=y?x:y;
public class demo01{
public static void main(String[] args){
int x=6,y=4,z=0;
z=x>=y?x:y;//z=6
}
}
包机制、JavaDoc
- 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
- 包语句的语法格式为:
package pkg1[.pkg2[.pkg3…]];
- 一般利用公司域名倒置作为包名
- 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句即可完成此功能。
import package1[.package2…].(classname|*);
JavaDoc
- JavaDoc命令是用来生成自己API文档的
- 使用格式:
javadoc Java文件
- 参数信息
@author 作者名
@version 版本号
@since 指明需要最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
Oracle中国在线JDK帮助文档:https://www.oracle.com/cn/java/technologies/java-se-api-doc.html
/**
* @author wfmiss
* @version 1.0
* @since 1.8
*/
public class Demo01 {
/**
* @author wfmiss
* @param args
*/
public static void main(String[] args) {
}
}
解决出现中文乱码的问题:javadoc -encoding UTF-8 -charset UTF-8
;
encoding (编码格式)
charset (字符集)