zoukankan      html  css  js  c++  java
  • 面对对象语言的三大特征

    面向对象语言的三大特性

     一、 封装

    类是对字段,属性,方法等数据成员的封装

    属性是对字段的封装

    项目是对类的封装

    二、 继承

    父类(基类)

    子类(扩展类)

    C#中子类可以继承到父类

    在子类的声明时,只需要在类名后加上”:”加上父类的类名,即代表此子类是从父类继承的类

    : class B:A   代表B类从A类继承 A类是父类,B类是子类.B类的成员具有A类的所有public的方法及属性

     Protected 访问符,使用此访问符在父类中声明的成员,只允许在子类中访问。

     继承中的构造方法 

    在实例化子类实例时会调用子类的构造方法,在调用子类构造方法前会先调用父类的构造方法。

    注意:在子类构造方法调用前会先调用父类的无参构造方法。

          如果在子类的构造方法中要调用父类的有参构造方法,只需要在子类构造方法声明时,在方法后面加上“:”base(父类构造方法调用时的实参)

    三、 多态

    在继承链中可以使用父类的指针指向子类的实例

     子类中和父类中的方法同名同参称作方法的重写

    在父类声明时,将方法前面加上virtual关键字,代表此方法为虚方法

     在子类中,可以使用new来隐藏父类中使用virtual声明的同名方法

    方法被隐藏后,在使用父类指针指向子类实例时,隐藏的方法会被调用.

    在子类中,可以使用override来覆盖父类中使用virtual声明的同名方法

    方法被子类覆盖后,即使使用父类指针指向子类实例,仍然是子类的实现。

  • 相关阅读:
    洛谷 P7520
    Involuting Bunny! (2021.8)
    Solution -「Gym 102979E」Expected Distance
    Solution -「Gym 102979L」 Lights On The Road
    Solution -「CodeChef JUMP」Jump Mission
    Solution -「洛谷 P4372」Out of Sorts P
    Solution -「Gym 102956F」Find the XOR
    Solution -「Gym 102956B」Beautiful Sequence Unraveling
    Solution -「Gym 102956F」Border Similarity Undertaking
    Solution -「LOJ #6029」「雅礼集训 2017」市场
  • 原文地址:https://www.cnblogs.com/luoquan/p/5066981.html
Copyright © 2011-2022 走看看