未分类

【www.2979.com】从而保护它不被其它的函数意外的修改,那么C不仅继承B也继承A

27 11月 , 2019  

C#中的base关键字表示基类,使用base关键字能够调用基类的布局函数、属性和方法。

访谈修饰符:

继续的特色:

二、世袭:世襲重要完毕重用代码,节省耗时。
1、C#中的世袭相符下列法则:
三番四遍是可传递的。假诺C从B中派生,B又从A中派生,那么C不独有世袭了B中声称的积极分子,相同也三番两次了A中的成员。Object类作为全部类的基类。
派生类应当是对基类的恢宏。派生类能够加多新的积极分子,但无法除去已经持续的成员的定义。
结构函数和析构函数不能够被持续。除了这几个之外的任何成员,无论对它们定义了什么样的拜访方式,都能被三番两次。基类中成员的拜见形式只好决定派生类能不能够访谈它们。
派生类假设定义了与世袭而来的分子同名的新成员,就足以覆盖已三番五遍的积极分子。但那并不因为那派生类删除了这个分子,只是不可能再拜见这一个成员。
类能够定义虚文法、虚属性以致虚索引提醒器,它的派生类能够重载这一个成员,进而达成类能够呈现出多态性。
2、new关键字
   借使父类中宣示了一个平素不friend修饰的protected或public方法,子类中也声称了同名的办法。则用new能够隐瞒父类中的方法。(不提出选择卡塔 尔(英语:State of Qatar)
www.2979.com,3、base关键字
   base 关键字用于从派生类中做客基类的积极分子:

单生机勃勃性:只好从一个基类中世袭,不能够并且继续八个基类世襲中的访谈修饰符base和this关键字基类的结构函数和析构函数无法被三番五次的。但能够应用重要字base来三回九转基类的布局函数。

装进的意义:
  封装的意思在于有限帮忙照旧防范代码(数据卡塔尔国被大家不言不语中损坏。在面向对象程序设计中数量被看成是几此中坚的要素并且和采取它的函数结合的很留神,进而维护它不被此外的函数意外的更改。

可传递性:C从B派生,B从A派生,那么C不止世襲B也世襲A。

装进提供了一个平价的路子来爱惜数量不被意外的毁损。相比较大家将数据(用域来兑现卡塔尔在程序中定义为公用的(public卡塔尔国大家将它们(田野s)定义为民用的(privat卡塔尔国在众多方面会更加好。私有的多少年足球以用二种办法来直接的支配。第大器晚成种艺术,我们利用古板的存、取措施。第两种情势大家用属性(property)。

namespace InheritanceApplication
{
   class Shape 
   {
      public void setWidth(int w)
      {
         width = w;
      }
      public void setHeight(int h)
      {
         height = h;
      }
      protected int width;
      protected int height;
   }

   // 派生类
   class Rectangle: Shape
   {
      public int getArea()
      { 
         return (width * height); 
      }
   }

   class RectangleTester
   {
      static void Main(string[] args)
      {
         Rectangle Rect = new Rectangle();

         Rect.setWidth(5);
         Rect.setHeight(7);

         // 打印对象的面积
         Console.WriteLine("总面积: {0}",  Rect.getArea());
         Console.ReadKey();
      }
   }
}

运用性质不只可以够决定期存款取数据的合法性,同一时候也提供了“读写”、“只读”、“只写”灵活的操作方法。

在现成类(基类、父类)上确立新类(派生类、子类)的管理进程称为世袭。派生类能自动获取基类的不外乎布局函数和析构函数以外的富有成员,能够在派生类中加多新的习性和方法增加其意义。

Private:只有类本身能存取.
Protected:类和派生类可以存取.
Internal:只有同一个项目中的类可以存取.
Protected Internal:是Protected和Internal的结合. 
Public:完全存取.

 

三、多态
  1、多态:同黄金年代操作成效于差别的对象,能够有分化的表达,爆发差别的进行结果。在运作时,能够透过指向基类的指针,来调用实现派生类中的方法。
金沙国际唯一官网网址,  编写翻译时的多态性:
【www.2979.com】从而保护它不被其它的函数意外的修改,那么C不仅继承B也继承A。  编写翻译时的多态性是透过重载来落实的。对于非虚的分子来讲,系统在编写翻译时,依据传递的参数、再次来到的类型等新闻决定完结何种操作。
  运转时的多态性:
  运转时的多态性便是指直到系统运营时,才依据真实情状调控实现何种操作。C#中,运营时的多态性通过虚成员达成。
  编写翻译时的多态性为我们提供了运行速度快的风味,而运作时的多态性则带给了冲天灵活和架空的性状。
  2、完毕多态:
接口多态性。
后续多态性。
通过抽象类实现的多态性。
  3、override关键字:
   重写父类中的virtual修饰的秘籍,完结多态。

  • 调用基类三月被别的格局重写的艺术。
  • 点名创制派生类实例时应调用的基类布局函数。

一、封装:
  封装是兑现面向对象程序设计的率先步,封装便是将数据或函数等聚焦在三个个的单元中(大家称之为类卡塔 尔(阿拉伯语:قطر‎。棉被服装进的对象平日被誉为抽象数据类型。


相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图