Java入门知识
一、Java的三大版本
- JavaSE 标准版(桌面应用,控制台开发…)—>基础
JavaME嵌入式开发(手机,小家电…)——基本没有人学了- JavaEE E:企业级开发(Web端、服务器开发) —>进阶
二、JDK、JRE、JVM
- JDK:开发者工具
- JRE:运行时环境
- JVM:虚拟机
JDK包含JRE,JRE包含JVM,因此下载JDK就能满足JAVA开发
三、Java开发环境搭建
-
打开JDK下载官网[下载地址](Java Downloads | Oracle)
-
找到JDK下载地址,点击图中下载安装
-
点击同意协议,下载电脑对应版本
-
双击安装JDK
-
记住安装的路径
-
配置环境变量
-
JAVA_HOME :jdk的路径
-
Path变量:双击打开添加两个值
-
- %JAVA_HOME%\bin (百分号表示引用)
-
- %JAVA_HOME%\jre\bin
-
-
测试JDK是否安装成功
win+R 输入cmd
在运行的窗口中输入java-version 出现JDK的版本信息即表示安装成功
Java基础
一、注释
- 单行注释://
- 多行注释:/* */
- 文档注释:/** */
二、标识符与关键字
Java所有的组成部分都需要名字,类名、变量名以及方法名都被称为标识符
标识符注意点
- 都以字母、美元符($)、下划线(_)开始
- 首字母之后可以是数字
- 不能使用关键字作为变量名或者方法名
- 标识符是大小写敏感的
- 可以用中文名命名,但是一般不建议,也别用拼音,很low
三、数据类型
- 强类型语言:要求变量的使用要严格符合规定,所有变量必须先定义才能使用,比如:JAVA
- 弱类型语言:~,比如:JavaScript、VBScript,HTML…
1、Java的数据类型分两大类
2、拓展
- 整数拓展:
- 二进制:0b int i = 10b;
- 十进制: int i = 10;
- 八进制:0 int i = 010;
- 十六进制:0x int i = 0x10;
- 浮点数拓展:
- 银行业务怎么表示?
- BigDecimal 数学工具类
- float:有限、离散、舍入误差、大约接近但不等于
- 结论:最好完全用浮点数进行比较
- 银行业务怎么表示?
- 字符拓展:所有字符的本质还是数字
- 编码:Unicode表
- 布尔值拓展:
四、类型转换
1、强制转换和自动转换
- 强制转换:(类型)变量名 高—>低 double->float->long->int->short->byte
- 自动转换:低—>高
2、注意点:
-
不能对布尔值进行转换
-
不能把对象类型转换成不相干的类型
-
高容量–>低容量,强制转换
-
类型转换会存在内存溢出、精度问题,故在进行类型转换时要特别注意这两个问题
-
若知道会溢出,一般把算式中的一个数转换成更大的
-
如
-
int a = 213213; int b = 2123412; long c = a*(long)b;
-
3、JDK7新特性
- 数字之间可以用下划线分割(一般是为了方便看出有多少个零)
- int money = 10_0000_0000(输出为1000000000)
五、变量
Java是强类型语言,每个变量都必须声明其类型
变量:变量名、变量类型、作用域
1、变量作用域
- 局部变量:作用域为方法内
- 实例变量:从属于对象,如果不自行初始化,将会初始化为默认值
- 类变量:从属于类 static
2、常量
-
初始化后不能再改变值
-
格式:
-
final 常量名 = 值;
-
-
常量名一般使用大写字母,如NUM
-
修饰符不存在先后顺序,如:static final等价于final static
3、变量的命名规范
驼峰原则:比如monthSalary,除第一个单词外,后面的单词首字母大写
- 见名知意
- 类成员变量:首字母小写和驼峰原则
- 局部变量:首字母小写和驼峰原则
- 常量:全大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:GoodMan
- 方法名:首字母小写和驼峰原则
六、基本运算符
1、如果运算符中有一个为long,则结果为long[向最高转换]
2、很多运算,会使用工具类来操作
3、逻辑运算符、位运算符
- 逻辑运算符:与:&& 或:|| 非:!
- 位运算符:与:& 或:| 非:~ 异或^ 移位运算符(效率极高):<<(*2) >>(/2)
-
逻辑运算符的二元运算符&&和||,如果左边的算术表达式就能判断出结果,则不会再判断右边的,而位运算两边的算术表达式都会运算
-
int a = 4; int b = 5; if(a++ < 5||b++ < 4){ sout(a); sout(b); } //输出的结果为: a = 5; b = 5; //b的结果并没有改变,说明后面的表达式没有进行
-
4、三元运算符
-
格式:表达式?表达式:表达式
-
字符串连接符:+,Sting
-
int a = 10; int b = 20; sout(""+a+b) //输出的结果为1020 //因为String后面有+,故以字符形式输出
-
5、运算符的优先级
这个慢慢学
七、包机制
包的本质就是文件夹
一般利用公司域名倒置作为包名:com.yuyue.www
- 小细节:
- idea新建包(输入com.yuyue.www)时未分级,点小齿轮,把compact的勾勾去掉
- 进不去lang,按住ctrl再点击,就能进去了
- 为了能使用某一个包的成员,我们需要在JAVA程序中明确导入该包,使用“import"语句实现
- 语法:
- 定义包:packege pkg1[pkg2[pkg3…]]
- 导入包:import packege2[.package2…].(classname/*) *通配符:导入包下所有的类,classname不能和类名相同
八、JavaDoc
该命令用来生成自己的API文档
-
格式:
-
/** *@author name *.... *... ... */
-