zoukankan      html  css  js  c++  java
  • C#多态性(函数重载)

    多态是同一个行为具有多个不同表现形式或形态的能力

    多态性意味着有多重形式,在面向对象编程范式中,多态性往往表现为“一个接口,多个功能”

    多态性可以是静态的也可以是动态的,在静态多态性中,函数的响应是在编译的时候发生的,在动态多态性中,函数的响应是在运行时发生的。

    在C#中,每个类型都是多态的,因为包括用户定义类型在内的所有类型都继承自Object

    1、静态多态性

      在编译时,函数和对象的连接机制被称为早期绑定,也称为静态绑定,C#提供了两种技术来实现静态多态性,分别是:函数重载和运算符重载

    函数重载和java类似

    2、动态多态性

      C#可以使用关键字abstract创建抽象类,用于提供接口的部分类的实现,当一个派生类继承自该抽象类的时候,实现即完成。抽象类中包含抽象方法,抽象方法可以被派生类实现,派生类具有更专业的功能

      抽象类的一些规则:

        不能创建一个抽象类的实例

        不能在一个抽象类外部声明一个抽象方法

        **通过在类定义前面放置关键字sealed,可以将类声明为密封类,当一个类被声明为sealed时,该类不能被继承。抽象类不能被声明为sealed

      当有一个定义在类中的函数需要在继承类中实现时,可以使用虚方法

        虚方法是使用关键字virtual声明的

        虚方法可以在不同的继承类中有不同的实现

        对虚方法的调用是在运行时发生的

      动态多态性是通过抽象类和虚方法实现的

  • 相关阅读:
    不在折腾---hbase-0.96.2-hadoop2
    不在折腾---hive-0.13.1-bin
    不在折腾---storm-0.9.2-incubating分布式安装
    zookeeper的zoo.cfg的配置
    Linux常用命令
    不在折腾----zookeeper-3.4.5
    VMware克隆后,网卡若干问题
    防火墙基础技术-02
    JavaScript email格式校验
    js透明按钮图片滑动切换焦点图
  • 原文地址:https://www.cnblogs.com/xing-29391/p/14591739.html
Copyright © 2011-2022 走看看