Java面向对象03

多态

1.概念:多态是同一个行为,具有多个不同表现形式或形态的能力。

2.多态的好处:提高代码扩展性,提高代码复用性。

3.多态的分类:

        多态类型:

                ①向上转型:父类的引用指向子类对象。        

                ②向下转型:为解决多态向上转型弊端。

4.多态向上转型弊端:一但发生向上转型,由于对外是父类的数据类型,

                                    不能调用子类所持有的属性和方法。

5.多态的向下转型:

        ①原因:解决向上转型的弊端。

        ②向下转型的弊端:如果真实对象,不是要转换的数据类型对象。会报classcastException

                                        类型转换异常。

        ③解决向下转型的弊端:

                ①关键字:instanceof

                ②格式→ 要转换的变量  instanceof  要转换成的数据类型

        ④注意:instanceof后面的数据类型必须精确,要转那个类型就是那个类型,不能使用父类。

6.多态成员之间的调用问题

        ①方法绑定:绑定指的是一个方法的调用,与方法所在的类(方法主体)关联起来。

        ②方法绑定的分类:

                ①静态绑定/前期绑定/编译期绑定:在编译时,就能确定那个类的那个方法。

                ②动态绑定/后期绑定/运行期绑定:在运行时,才能确定那个类的那个方法。

        ③成员:

                ①编译期绑定:属性(静态或非静态)静态方法。

                ②运行期绑定:非静态方法。

总结:

        ①编译看左:属性 和静态方法

        ②运行期,先看左,在看右:非静态 先看赋值符号左侧的数据类型,确定要执行的方法。

                                                       运行时看右侧真实对象,决定是调用父类还是子类的重写方法 

类与类之间的关系 

1.继承关系:本类是同一种事物。

2.聚合关系:整体和部分,可以分开。

3.组合关系:整体和部分,不可分开。

向上转型/里氏替换 

任何基类出现的地方,子类也可以存在,通俗的说,就是任何父类出现的地方,子类也可以出现。

        

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值