JAVA -01
前期准备
介绍
- 1972年C诞生【两大问题:指针;内存管理】
- 1982年C++诞生【面向对象;兼容C;图形领域和游戏,但是更复杂】
- 1995年JAVA诞生【没有指针没有内存管理;面向对象;类型安全;高质量类库;跨平台(JVM实现);applet图形界面程序】
小碎点
- 三高问题:高可用、高性能、高并发
Java特性
- 简单性【易学】
- 面向对象
- 可移植性【一次编写多次运行】
- 高性能【及时编译】
- 分布式【TCP/IP处理、URL调用、远程调用】
- 动态性【反射机制】
- 多线程【交互、实时】
- 安全性【防病毒、防篡改、异常机制】
- 健壮性
- 既是编译型又是解释型语言
11. 大小写敏感
Java的三大版本
- JavaSE:标准版(桌面程序、控制台开发)
- JavaME:嵌入式开发(手机、小家电)
- JavaEE: 企业级开发(web端、服务器开发)
JDK、JRE、JVM
1. JDK:Java Development Kit 【Java开发包】
2. JRE:Java Runtime Environment 【Java运行时环境】
3. JVM:Java Virtual Machine 【Java虚拟机】
JDK7和JDK8之间的区别
JDK7
- JDK7新特性,数字之间可以用下划线分割
JDK8
JDK卸载
JDK安装
- 百度搜索jdk8,找到下载地址
- 同意协议、下载对应版本安装包
- 双击安装
- 安装目录建议找易找到的,并记住安装路径
- 配置环境变量
- 我的电脑 --->右键 --->属性 --->高级系统设置
- 环境变量 --->系统变量 --->新建系统变量--->JAVA_HOME--->安装路径
- 配置path变量
- 系统变量里面找到path --->新建%JAVA_HOME%\bin --->新建%JAVA_HOME%\jre\bin
- 打开cmd ---> java -version 检查,出现安装的版本及成功
控制台输出HelloWorld【第一个java程序】
-
新建一个文件【文件名HelloWorld文件名和文件里的class后面的要一致】,将后缀改为.java
-
在里面编写代码
-
public class HelloWorld{ //HelloWorld与文件名一致 public static void main(String[] args){ System.out.println("Hello,World!"); } }
-
控制台进到文件目录,进行编译
-
javac HelloWorld.java
-
运行
-
java HelloWorld
使用IDEA开发
-
下载安装包,安装
-
安装时需要根据电脑版本选择是 “.32” 还是 “.64” ,还有勾选 ".java" 。
-
破解
使用IDEA快捷键
1、psvm + enter 可以快速补充
public static void main(String[] args) {
}
2、sout + enter 可以快速补充
System.out.println();
3、Ctrl + d 复制当前行到下一行
Java基础语法
注释
1、//单行注释 //
2、//多行注释 /* 注释 */
3、//JavaDOC /** 文档注释 */
标识符【关键字】
1、所有标识符首字母必须以字母(A-Z,a-z),美元符号($),下划线(—)开始
2、首字母之后可以任意
3、大小写敏感
4、不能使用关键字作为变量名和方法名
5、String不是关键字,是一个类
数据类型
1、java是强类型语言【变量使用复合类型且必须先定义再使用】
2、两大类【基本类型、引用类型】
3、primitive type 基本类型 【byte(1B)、short(2B)、int(4B)、long(8B)、float(4B)、double(8B)、char(2B)、boolean(1b)】【long类型要在后面加上L,float要在后面加F】
4、reference type 引用类型 【类、接口、数组】
public class Demo01 {
public static void main(String[] args) {
//====================================================
//int型 【int(4B)】
//====================================================
int i = 10;
int i2 = 010; //八进制0
int i3 = 0x10; //十六进制 0x
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
System.out.println("====================");
//====================================================
//float型 && double型 【float(4B)、double(8B)】
//====================================================
float f = 0.1f;
double d = 1.0/10;
System.out.println(f);
System.out.println(d);
System.out.println(f==d);
System.out.println("====================");
//====================================================
//浮点数拓展? 银行业务怎么表示?钱
//BigDecimal 数学工具类
//====================================================
//float 有限 离散 舍入误差 大约 接近但不等于
//最好完全避免使用浮点数标记!!!
//最好完全避免使用浮点数标记!!!
//最好完全避免使用浮点数标记!!!
float d1 = 23169541465661f;
float d2 = d1 + 1 ;
System.out.println(d1==d2);
System.out.println(d1);
System.out.println(d2);
System.out.println("====================");
//====================================================
//char型 【char(2B)】
//字符拓展?
//所有字符本质还是数字 编码 Unicode 2字节 0-65536 Excel 2^16 = 65536
//================================================