将近4天没更新啊,为什么呢,主要是面向过程太难太抽象了,不过好在我用四天还是将他理解了。
1.封装 (关键字:private)
- 保护私有的方法和属性。
- set 直接修改private get直接得到private
- 构造方式:void set\get+被private修饰的属性或方法( )→ 其也包括有参构造和无参构造
- 使用: 对象名 . 被private修饰的属性或方法
2.继承 (关键字:extends)
- 子代:可以调用父代非private的所有属性和方法,因为子代在其代码块的第一段就调用父代的无参构造
- 当子代()带参数时,此时调用的是父代的有参构造,不是子代的有参构造,因此父代的构造器无法调用,进而导致子代的构造器无法调用,编译就会直接报错
- 一个父代可以有多个子代,但带有final的父代子代将无法继承
- 强制类型转化只能时子代转化为父代
3.重写
- 基于多态,而只对方法重写
- 子代对父代的方法进行重写,修饰符的类型一定要扩大
- 没重写时,多态调用时,子代调用子代的方法,父代调用父代的方法,重写后只能调用子代的方法
- 对于重载:必须满足参数类型、参数个数甚至时参数顺序中有一个不同
- 不能重写:static private final
4.多态
- new所创建的对象的类是确定的,但其可以指向的类就多了
- 多态调用不能调用子代有而父代没有的方法
- 强制类型转化加多态构造可以让父代调用子代的方法
5.instanceof
- 判断其是否为父子关系(instanceof)
- 变量名+instanceof+类名(判断方法如下)
标签:父代,Java,11.14,多态,private,学习,子代,调用,重写 From: https://www.cnblogs.com/kai0fang0/p/16889197.html