JDK安装之后需要配置环境变量
安装好之后可以把jdk的bin目录直接配置在Path环境变量中,与其他路径用(;)隔开,但是path中有许多其他的路径,因此容易出错,因此我们可以先在系统变量中添加JAVA_HOME系统变量,然后再在Path变量中引用JAVA_HOME路径即可。
JAVA_HOME D:\Program Files\Java\jdk1.8.0_92
Path %JAVA_HOME %\bin;
然后就可以在cmd中检查是否配置好
执行javac或者java -version都可以
一个文件中是否可以定义多个类?
可以定义多个类,但是只有一个类是public修饰,并且类名不能相同,public修饰的类名与文件名要一致,并且每个类都会被编译成单独的(.class)文件,类名首字母要大写,这是一个规范。
一个类中是否能有多个方法?
一个类中可以存在多个方法,但是只能有一个主方法,主方法是程序的入口,主方法中的的代码会逐行执行,但是一个类中又可以没有主方法,但是会在解释执行阶段因为没有主方法而报错。
java的注释分为三种
单行注释://…
只在当前行有效,只可以嵌套单行注释,一般在行的上面或者末尾的地方进行注释。
多行注释:/…/
多行有效,只可以嵌套单行注释,一般在类和方法的上面进行注释。
文档注释:/**…*/
多行有效,只可以嵌套单行注释,一般在类和方法上面进行注释
java Note.java会生成Note的API文档,文档注释也会出现在该文档中,但是单行注释与多行注释是不会出现在该文档中,这是文档注释与单行注释与多行注释的明显区别。
java标识符
在java中一切起名字的地方的名字就是标识符
标识符的命名规则如下:
1.标识符只能数字,字母,下划线_,美元符号$任意组合而成,但是数字不能开头
2.标识符严格区分大小写
3.关键字不能作为标识符使用
标识符的命名规范
- 见名知意
- 驼峰命名原则
- 包: 全部小写
单级包: shangxuetang
多级包: shang.xue.tang - 类|接口: 每个单词的首字母大写 ShangXueTang
- 方法|变量: 第一个单词全部小写,第二个单词开始,每个单词首字母大写 shangXueTang
- 常量:全部大写 每个单词之间使用_进行分割 SHANG_XUE_TANG
- 关键字: 在java中,有一些词有自己的用法或者用途,这些词就是关键字,所有的关键字都是小写,颜色存在不同显示
- 保留字:在java中,有一些词将来有可能有自己的用法或者用途,这些词就是保留字
goto const
java常量
在程序执行过程中,其值不会发生改变的量
- 字面值常量:
- 整数常量: 124 56 -2
- 小数常量: 1.1 -65.5
- 字符串常量: “aflds”
- 字符常量: ‘a’
- 布尔常量: true,false
- 空常量: null
- 自定义常量:PI=3.14
- final修饰的变量为常量
java变量
在java程序执行过程中,其值会发生改变的量在内存中,开辟一块空间,用来存放指定数据类型的数据
语法:
- 声明的同时赋值
- 数据类型 变量名 = 变量值;
- int double String char boolean
特点是先声明后赋值 - 数据类型 变量名;
- 变量名= 变量值;
一行同时声明多个变量
注意: = 是java中唯一一个自右向左运算的符号
变量关注的点:
-
变量的数据类型
-
变量名字 (遵循标识符的命名规则和规范)
-
变量的值 (和数据类型一致)
-
作用域: {}
-
同一作用域中的变量不能同名
-
使用变量时候的注意事项(1.输出 2.运算):
1.变量必须提前声明
2.使用变量前要赋值 -
变量的分类:
局部变量: 方法|语句块内定义的变量
使用前必须声明并且已赋值
成员变量|实例变量: 类中方法外
如果成员变量只声明未赋值,存在默认值 int->0 , double->0.0 , boolean->false , String->null , char->’ ’
java数据类型
基本数据类型: 4类8种 -
整型 :整数
表现形式 表示名称 大小 范围
byte 字节型 1个字节 8位 [-128,127]
short 短整型 2个字节16位 [-32768,32767] ±3万
int 整型 4个字节32位 ±21亿
long 长整型 8个字节64位 非常大 -
整数的字面长量值默认的数据类型是int类型
-
如果给byte,short赋值,只要在其范围之内的字面常量值都能成功赋值
-
如果想要给long类型的常量赋值,需要在数据的后面添加一个L/l 推荐使用L
-
浮点型 : 小数
表现形式 表示名称 大小 精度
floa 单精度 4个字节 精确到小数点后7位左右
double 双精度 8个字节 精确到小数点后15位左右 -
小数默认字面常量值类型为double,如果想要给float赋值,在数据的后面添加一个f/F
小数因为内部存储方式的不同,运算不精确的 -
字符型
表示单个字符 char 字符型 2个字节
表示字符的方式:
1. ‘单个字符’ ‘a’ ‘1’ ‘,’ ’ ’
2. 0~65535之间的整数表示某个字符 Unicode表中查看 -
如果字符型的数据参与运算,默认转为十进制的数再去运算
-
布尔型
使用布尔类型做逻辑判断
boolean 1位 true,false -
引用据类型 : 类 接口 数组[]
数据类型转换
1.boolean类型不参与类型转换 -
自动类型提升:隐式类型转换:
从小范围类型->大范围的数据类型 -
强制类型转换:显示类型转换:
从大范围类型->小范围类型,有可能会损失精度
小范围数据类型 变量名 = (小范围数据类型)大范围数据类型;
注意:
1.如果多个类型参与运算,最终的结果的数据类型为最大的数据类型,如果这个类型是小于int,结果提升成为int类型,如果大于int,结果为参与运算的最大的数据类型
2.如果给byte,short,char类型赋值,必须是int类型的常量才能成功赋值
byte – short – char – int – long --float --double