zoukankan      html  css  js  c++  java
  • 多态

    1、多态概述

    多态是面向对象的三大特性之一。它描述的是一种事物的多种形态,例如一名同学既是学生,又是人,此时学生就有两种形态。

    多态体现在父类引用变量指向子类对象。

    多态的前提是一个类必须有父类或实现了接口,否则无法完成多态。

    在使用多态的父类引用变量调用方法时,会调用子类重写后的方法。

    2、多态的定义与使用格式

    定义格式:

      父类类型 变量名 = new 子类类型();

      变量名.方法名;

    同一个父类的方法被多个子类重写时,在调用方法时,会调用父类引用变量指向的子类中被重写的方法。

    3、多态中成员的特点

    成员变量

    • 编译时期:参考的是引用变量所属的类中是否有被调用的成员变量。没有,编译失败。
    • 运行时期:调用引用变量所属的类中被调用的成员变量。
    • 口诀:编译运行看左边。

    成员方法

    • 编译时期:参考引用变量所属的类,如果类中没有被调用的方法,编译失败。
    • 运行时期:参考引用变量所指向对象所属的类,运行对象所属类中的方法。
    • 口诀:编译看左边,运行看右边。

    4、instanceof关键字

    instanceof关键字用于判断某个对象是否属于某个类型。

    5、多态转型

    多态转型分为向上转型合向下转型。

    • 向上转型:子类对象赋给一个父类引用变量,最典型的向上转型是多态。
    • 向下转型:一个已经向上转型的子类对象,可以通过强制类型转换,将指向子类对象的父类引用转为子类引用。

    6、多态的好处与弊端

    • 好处:多态的向上转型隐藏了子类类型,提高了代码的扩展性
    • 弊端:向下转型需要判断子类类型,否则容易引发类型转换异常

    7、多态举例

  • 相关阅读:
    前端如何进阶架构师
    NPOI使用记录
    ArcGis 中空间数据的插入与更新
    (转载).net 缓存处理
    ASP.NET(c#)实现重定向的三种方法的总结
    数据库关联表之间的更新语句
    C#net多线程多文件压缩下载
    关于写文件流的情况
    C# Class获取项目的绝对路径
    C# .net中DatailsView的JS简易版
  • 原文地址:https://www.cnblogs.com/alphajuns/p/9802625.html
Copyright © 2011-2022 走看看