java的封装继承多态理解
java的面向对象:找谁(方法)干什么事
java三大特性 :封装、继承、多态
一、封装
作用就是方便使用,面向对象
- 封装的的操作--private 关键字
封装优化--this关键字
this的作用。主要事重名的时候,起到区分作用。方法被谁调用谁就是this
二、继承
java是单继承的,继承主要解决的问题就是:共性抽取
为什么要有继承,如图
- 继承---成员属性,子类父类属性重名问题()
- 继承---成员方法,子类调用,优先使用子类自己的
- 继承---构造方法,super()
方法覆盖:
父子子类内存图
三、多态
多态指的是对象的多态性,而不是这个类。
多态作用:用方法参数上,方法返回值上
代码中的多态性,就是父类引用指向子类对象。右侧子类对象就被当作父类对象使用。
属性不能覆盖重写
子类独有的方法,要向下转型为子类,方可调用。用instance of 判断,防止发生类转换异常
多态的另一种实现---接口
public interface 接口名称 {
// 属性 (public static final int num=10) 常量(必须赋值) 接口名称.属性名
// 抽象方法 (有抽象方法需要实现,没有就不用实现)
// 默认方法 (为了解决接口升级,和lamata表达式和函数接口,接口默认方法可添加函数模型)java8
// 静态方法 (注意:不能通过接口的实现类调用静态方法)->接口名称.方法名 java8
// 私有方法 java9 (普通私有 静态私有) 【private 【static】返回值类型 方法体 】
}
抽象方法
默认方法
静态方法
私有方法
补充--抽象类
抽象类出现 主要是因为方法不确定性,有抽象方法的类必须是抽象的类
抽象类的使用
抽象类的注意事项
真正的改变,从来都是静默无声的。很多事情做不到的爱可以做到。做一个充满爱意的人儿。允许。
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!