1.Java的三个重要特点:跨平台,面向对象,开源。
2.Java的重要机制:Java虚拟机(JVM),垃圾回收
- JVM简介:
图一:
javac命令:将Java源文件编译成字节码文件,
java 命令:JVM解释执行已经编译好的字节码文件。
图二:
- 垃圾回收:jvm自动进行垃圾回收(省)
2-1. 方法区,虚拟机栈,堆
- 方法区又叫静态区,用来存放字节码,包括所有的static,class变量。
- 虚拟机栈,每次调用一个函数时,生成一个栈帧,并加入虚拟机栈。
- 堆是用来存放对象实例的。
3.Java中的大小写,类名大写并且和文件名一致,Java严格区分大小写。
4.变量/类型
4.1基本数据类型:
- 整型:byte,short,int long
- 浮点型:float,double (float类型后面加f)
- 字符型:char
- 布尔型:boolean
4.1.1自动类型转换
- jvm在运算时候,最小识别的数据类型为int。
- 会自动把小的类型转化为大的类型。
4.2.引用数据类型(类,接口,数组,枚举,注解)
4.3.值传递(基本数据类型在栈中执行)
4.4.引用传递(地址传递)
5.变量的命名规则:
- 字母,数字,下划线,美元符号组成
- 不能以数字开头
- 不能使用美元符号
- 变量命名规则,遵循驼峰命名规则
6.运算符
- 赋值运算符
- 算术运算符(+,-,*,/,++,--)存在 数据类型转换(自动/强制)
- 关系运算符
- 逻辑运算符
7.多重if与switch 结构(条件结构)
- switch适合做等值判断, jdk1.7支持字符串
- 多重if适合做区间判断
8.循环结构 while ,do...while,for
- while(){...} 先判断,再执行
- do{...} while() 先执行,再判断
- break,continue跳出循环
9.数组,存储相同数据类型的一组数据(数组的长度固定)
- 声明一个变量就是在内存空间划出一块合适的空间
- 声明一个数组,就是在内存空间划出一块连续的空间
- 用数组求最大值,数组冒泡排序
10.嵌套循环
- 利用嵌套循环打印直角三角形,等腰三角形,99乘法表
- 外行循环控制执行行数,内层循环控制每行的 "*" 数 ,代码实现
11.使用数组进行排序
- 冒泡排序 ,外循环比较趟数,内循环比较次数 , 冒泡排序代码实现,时间复杂度 O(n2)
- 选择排序,时间复杂度 O(n2)