第八章 面向对象编程(中级部分)
目录
8.1 包
包有以下作用:
1)区分相同名字的类
2)当类很多时,可以很好地管理类(看Java API文档)
3)控制访问范围
8.2 访问修饰符
8.3 面向对象三大特征
8.3.1封装:
8.3.2继承:
继承内存分析:
8.3.3多态
多态是指 方法或对象具有多种形态,它是建立在继承和封装基础之上的,且多态的前提是两个类存在继承关系
多态的具体体现:
1)方法的多态
方法的重写和重载就体现了多态
注意:属性是没有重写之说的,直接看编译类型即可
2)对象的多态
多态的应用:
1)多态数组:数组定义类型为父类类型,里面存放的实际元素类型为子类类型
2)多态参数:方法定义的形参类型为父类类型,实参类型允许为子类类型
8.4 super关键字
8.5 方法重写/覆盖(overwrite)
注意事项与使用细节:
1)子类方法的形参列表、方法名称,要和父类的形参列表、方法名称完全一样
2)子类方法的返回类型和父类方法返回类型一样,或者是父类返回类型的子类
比如 父类返回类型是Object ,子类返回类型是String
3)子类方法不能缩小父类方法的访问权限
public > protected > 默认 > private
8.6 Java的动态绑定机制
1)当调用对象方法时,该方法会与该对象的内存地址/运行类型绑定
2)当调用对象属性时,没有动态绑定机制,哪里声明,哪里使用
8.7 Object类详解
8.7.1 equals方法
equals与== 的对比: