一、封装
对象代表什么,就得封装对应的数据,并提供数据对应的行为
二、继承
- java只能单继承不能多继承但是可以多层继承
- java中所有的类都直接或者间接继承于Object类
- 子类只能访问父类中非私有的成员
1、继承中构造方法的访问特点:
- 父类中的构造方法不会被子类继承
- 子类中所有的构造方法默认先访问父类中的无参构造,再执行自己(子类在初始化的时候,有可能会使用到父类中的数据,如果父类没有完成初始化,子类将无法使用父类的数据,所以,子类初始化之前,一定要调用父类构造方法先完成父类数据控件的初始化)
2、怎么调用父类的构造方法
子类构造方法的第一行语句默认都是:super() ,不写也存在且必须在第一行
3、this super 的使用总结
this: 理解为一个变量,表示当前方法调用者的地址值
super: 代表父类存储空间

1.继承中成员方法的访问特点
this调用:就近原则
super调用: 直接找父类
2、什么是方法重写
在继承体系中,子类出现了和父类中一模一样的方法声明我们就称子类的这个方法是重写方法
3、方法重写加@override
注解可以检验重写是否正确,同时可读性好
4、重写方法有哪些基本要求
子类重写的方法尽量跟父类中的方法保持一致
只有虚方法表里面的方法可以被重写
三、多态
1.多态的优势
方法中使用父类型作为参数,可以接受所有子类对象
2、多态的弊端
不能使用子类的特有功能
3、引用数据类型的类型转换
Person p = new Student(); // 自动类型转换(由小到大)
Student s = (Student)p; // 强制类型转换
4、强制类型转换能解决的问题
- 可以转换成真正的子类类型,从而调用子类的特有功能
- 转换类型与真实对象类型不一致会报错
- 转换的时候用instanceof关键字进行判断