JavaSE
(1).Java语言初识
准备工作
Java的诞生 1995年第一版出来
JavaSE
JavaME 因为Android火起来了
JavaEE
2006年 Hadoop
JDK
开发者工具包
配置环境变量
JRE
运行环境
(2).基础语法
1.注释
行内注释 //
多行注释 /**/
文档注释 /** */
2.标识符
关键字
3.数据类型
基本数据类型
整数 byte short int long
浮点数 float double
字符 char
布尔值 boolean
引用数据类型
类
接口
数组
类型转换
自动类型转换 ----低转高
强制类型转换 ---- 高转低
4.变量和常量
type varName [= value];
作用域
类变量,实时变量,局部变量
5.运算符
算术运算符 + - * % ++ –
赋值运算符 =
关系运算符 > < <= >= == != instanceof
逻辑运算符 && || !
位运算符 & | ^ ~ >> << >>>
条件运算符 ? :
扩展运算符 += -= *= /=
(3).流程控制
scarrner
用户交互 System.in
顺序结构
程序默认结构,自上而下的执行。
选择结构
if循环
if单选泽结构
if else 双选择结构
if else if else 多选择结果
witch循环
jdk 支持了String类型
case 穿透现象
break 结束语句
循环结构
while
do while
for for(int i=0;i<100,i++){}
增强for循环 for(in) 这是关于数组的增强
(4).方法
1.什么是方法?
一个语句体
2.方法的定义
修饰符 返回值 方法名(参数名){return 返回值;}
3.方法的调用
类名.方法
对象.方法
4.方法重载
名字相同。参数列表不同
5.命名行传参
给main方法传递参数
6.可变长参数
…
必须放在最后一个参数
递归 自己调用自己,给自己一个出口
(5).数组
1.数组的定义
new int[]
{1,2,3,4,5}
必须是同一类型
2.数组的使用
通过下标拿到值
ArrayIndexoutofbounds
增加for循环办理
3.二维数组
int[[ ]][][ ]
4.Arrays工具
5.排序算法
冒泡排序 选择排序 插入排序 快速排序 归并排序 希尔排序 奇数排序 堆排序
(6).面向对象
1.类与对象
类是对象的抽象:模板class
对象是类的具体
2.构造方法
构造的重载
1.默认的无参构造
2.如果手动定义了有参构造就必须要手动再加一个无参构造
3.单例模式,需要构造器私有!
3.new对象
栈存放引用
堆存放的具体对象
4.封装
属性私有,get,set
5.继承
extends
Object
子类拥有父类的全部特性
方法重写
this super
6.多态
父类的引用指向子类的对象
Person person = new Student();
instanceof 关键,如果匹配,可以进行类型之间的转换
7.修饰符
public
protected
private
static
final
abstract
8.接口
interface
约束 只能定义方法名
子类实现接口 必须重写其中的方法
只有一个方法的接口叫做函数式接口,可以使用lambda表达式简化
接口比抽象更抽象
一个类可以实现多个接口
9.内部类
局部内部类
静态内部类
匿名内部类
(7).异常
1.Throwable
一.Exception
1).运行时异常
1/0
ClassNotFound
NullPoint
UnKownnType
…
2).检查性异常
运行程序会有哦提示
二.Error
1).AWU错误
2).JVM错误
StackOverFlow
OutOfMemory
2.五个关键字
try{}
ctach(){}
finally{}
throw 手动抛出异常
throws 方法做出异常
3.自定义异常
继承Exception类即可