javaEE 企业版 主要从事:企业级别的应用 网站 大数据处理 GitHub
javaSE 标准版本
javaMe 嵌入式 Android
java语言跨平台原理(一次编译,多处运行)
在需要运行java应用程序的操作系统上,安装一个与系统相适应的JVM即可。
.class 文件执行依赖于 JVM (java虚拟机)
JDK 包括 JRE 和 开发工具 (javac.exe java.exe 都在Bin目录下) javap.exe 反编译
JRE 包括 JVM 和 核心类库
打开 命令提示符窗口
1. win+R
2. 输入cmd
3. 回车键
为什么要配置Path环境变量?
为了在电脑的任意目录下都可以对Java代码进行编译和运行。
我的电脑 右键选择属性 --> 高级环境设置 --> 环境变量 --> 在系统变量例面创建一个JAVA_HOME --> 配置Path
DOS命令:java-version 查看jdk版本
常量:在程序运行期间不会发生变化的量
1. 字符串常量 "ABC" "两个双引号之间的数据都称为字符串常量"
2. 字符常量 'A'、 ' '、 '中' //在两个单引号中间有且仅有一个符号
3. 整数常量 包括整数和负数
4. 浮点数常量 //小数 3.14 5.001
5. 布尔常量 true false
6. 空常量 null
数据类型
1. 基本数据类型
2. 引用数据类型 (String字符串类型)
基本数据类型
1. 整型
byte 1个字节 范围 -128~127
short 2个字节
(默认) int 4个字节 大概21个亿
long 8个字节
2. 浮点型
float 4个字节 //3.14
(默认) double 8个字节
3. 字符型
char 2个字节 范围 0-65535
4. 布尔型
boolean 1个字节 true/false
变量的定义格式 IO流 GC
数据类型 变量名称 = 数据值(常量值);
int age = 18;
注意事项:
1.变量名不能重复
2.使用变量前一定要给变量赋值
3.如果定义 long 类型的数据 后面要加上L long l = 1000L;
如果使用 float 类型 float f = 3.14F;
switch(表达式){
case 常量值1:
语句体1;
break;
case 常量值2:
语句体2;
break;
……
default:
语句体n;
break;
}
表达式能放的数据类型: byte short int char String enum(枚举)
switch 执行效率高;
for(初始化语句①;条件判断语句②;条件控制语句④){
循环语句③;
}
// ①(只在循环开始执行一次) --> ② --> ③ --> ④
for(int i = 0;i < 10;i++){
System.out.println("我错了!");
}
如果循环里面嵌套了一个 switch 里面的 break 不能使其跳出循环;
如何区分IDEA的项目和模块?
只要里面有.idea文件夹,基本就是project;
里面有src和iml 属于模块(modules)。
数组:
一个容器 能够存储多个相同类型的数据{100,99,98,97}
格式
int [] arrayA; (主要用这种)
数据类型[] 变量;
//int arrayA [];
动态初始化(创建) //只需要知道数据类型 和 数据长度即可
格式:
数据类型[] 变量 = new 数据类型[数组长度];
boolean[] arrayA = new boolean[5];
new :创建一个新的对象(在内存里面 申请一个新的空间 用来保存数据)
访问数组里面的元素:
索引(也称下标) arrayA[0]; 0代表索引值
内存:
栈区(Stack)
1.存储局部变量
2.方法执行的时候会进栈执行
堆区(Heap)
new 出来的东西都在堆区里面
方法区(Method area)
加载字节码(class)文件
本地方法栈
寄存器 CPU效率……
静态初始化
格式:
标准格式:数据类型[] 变量 = new 数据类型[]{元素1,元素2,……元素n};
省略格式:int[] arrayB = {1,2,3,4,5};
//无论元素是变量还是常量都可以
两个异常
1.ArrayIndexOutOfBoundsException //数组的索引越界异常
int [] arr = new int[3]; //最大索引为2;
2.NullPointerException //空指针异常
遍历数组
arr.fori
for(int i = 0;i<arr.length.i++){
System.out.println(arr[i]);
}
|
|