Java 面向对象
1.面向对象 object-oriented programming OOP 抽象 封装 继承 多态
2.方法回顾和加深
方法定义: 修饰符 返回值 方法名 (参数列表){方法体 return 0;}; 方法重载 参数列表 个数 类型 参数类型顺序;
抛出异常throw
方法调用:递归
1.静态方法 和类一起加载;
2.非静态方法 和对象一起加载,实例化后加载;
3.形参和实参
4.this关键字
5.值传递和引用传递
3.对象的创建和分析
new 分配内存空间 默认初始化属性,调用构造器方法。
构造器:和类名相同,对类内实例变量进行初始化。
默认构造器和带参数的构造器,声明了有参构造,无参构造需要显示写出。
alt+insert
4.面向对象三大特性
封装:get/set
继承:extends Object super 在子类中调用父类无参构造,系统默认调用。 父类如无参构造,子类可以显示调用父类有参构造,只能有参构造。
方法重写:1.需要继承关系,子类重写父类方法;2.方法名必须相同,3参数列表必须相同;4.修饰符必须扩大;public>protected>default>private;5.
多态:有父子关系才能转换。方法的多态; 对象能执行哪些方法,主要看对象左边的类类型,类含有哪些类型就能调用哪些类型。重写方法 注意。
多态条件:1.继承关系;2.方法在父类子类都有,执行子类方法。方法重写;3.父类引用执行子类。
instanceof :类型转换,引用类型的转换。子类和父类的转换。有父子关系。
X instanceof Y 1.X Y 有父子关系。
类型转换: 父----> 子==== 高------>低
子类转换成父类,可能丢失一些方法。
基础类型转换:是容量的转换
静态代码块(执行一次) 代码块 构造函数 静态代码包 final
5.抽象类和接口 类单继承 接口多继承
abstract 抽象类 public abstract class test{
public abstract void print();
}
普通类:只有具体实现;
抽象类:既有抽象方法又有具体实现;
接口: 都是抽象方法;public abstract implement static final 常量
6.内部类和OOP实战
成员内部类:
静态内部类
局部内部类
匿名内部类
7.异常: java.lang.Throwable基类 Error Exception
try catch finally throw主动抛出异常方法中抛出,throw new XXXException()。 throws Exception 方法上抛出。
ctrl+alt+T 快捷键 包裹 tray catch finaly