计算机二级Java语言入门(十四)
树图思维导图提供 计算机二级Java语言入门(十四) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(十四) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:ece88b91b79e7676746ef37e66746d60
计算机二级Java语言入门(十四)思维导图模板大纲
多态指的是编译时类型变化,而运行时类型不变
编译时多态
编译时动态重载
运行时多态
指一个对象可以具有多个类型
对象是客观的,人对对象的认识是主观的
Animal a=new Dog();查看格式名称; Dog d=(Dog)a。声明父类来引用子类。 (思考上面的格式)
对象不变
(改变的是主观认识)
对于对象的调用只能限于编译时类型的方法,如调用运行时类型方法报错
Animal a=new Dog()
对象a的编译时类型为Animal,运行时类型为dog
注意
编译时类型一定要为运行时类型的父类(或者同类型)
对于语句
Dog d=(Dog)a。将d强制声明为a类型,此时d为Dog(),此时d就可以调用运行时类型
在程序的运行时,动态类型判定。运行时调用运行时类型,即它调用覆盖后的方法
关系运算符:instanceof
a instanceof Animal;(这个式子的结果是一个布尔表达式)
a为对象变量,Animal是类名
上面语句是判定a是否可以贴Animal标签。如果可以贴则返回true,否则返回false。
封装、继承、多态为面向对象的三大基石
编译时类型,不存在运行时的多态
覆盖时考虑子类的private及父类的public(考虑多态),之所以这样是避免调用A时出现实际调用B的情况
建立一个shape类,有circle和rect子类
Shape类有zhouchang()和area()两种方法
(正方形)squ为rect子类,rect有cha()用于比较长宽的差
树图思维导图提供 计算机二级Java语言入门(二十一) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(二十一) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:c32f739dbed5eb20f33876e62b0d33a5
树图思维导图提供 计算机二级Java语言入门(二十) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(二十) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:cf10cbf2649d25ff4c6a7de398208170