美文网首页
C#面向对象总结二继承

C#面向对象总结二继承

作者: X江 | 来源:发表于2017-03-17 14:11 被阅读25次

继承是面向对象的三大特性之一。

1.继承

1.1概念:一个类从其他类派生时,派生类隐式获得基类除构造函数和析构函数外所有成员。C#只支持单继承

1.2.语法格式:calss ClassName:SuperClass{}。冒号表示继承,示例

public class Person()
{
    private string Name{ get; set; } 
}

class Student:Person(){
      public Student(string name){
            this.Name = name; // 继承了父类的Name属性
      }

      public void Study(){
            Console.WriteLine(name + “在学习”);
      }
}

1.3.构造函数:当子类实例化时,构造函数从基类依次被调用。

通过 sealed 关键字可以禁止类进一步派生

2.几个关键字

virtual: 用于修饰方法,属性,索引器或事件,并使他们可以在派生类中被重写(override)
new: 显式隐藏从父类继承的成员,主要用于派生类和父类同名方法的选择
override: 1).重写继承的方法,或事件的抽象实现或虚实现
2).由override声明重写的方法称为重写基方法,重写的基方法必须与override方
法具有相同的方法名和签名
3).不能重写非虚方法或静态方法,重写的基方法必须具有virtual、abstract、或
override关键字
代码:

public class Person()
{
    private string Name{ get; set; } 

// 如果这里没有加上virtual 关键字修饰,子类将不能通过override关键字进行重写
    public virtual void Eat(){
         Console.WriteLine("我是人类,我要吃饭");
    }
}

class Student:Person(){
     
      public override void Eat()
        {
            Console.WriteLine("学生要吃饭");
        }

        //public new void Eat()
        //{
        //    Console.WriteLine("学生要吃饭");
        //}
}

static void Main(string[] args)
        {
            Person person = new Student(“继承”);
            person.Eat();
        }
new关键字修饰
override关键字修饰

结论:
new关键字用来区分子类和派生类的方法
override重写父类的方法,即覆盖了父类的方法

【原】

相关文章

  • C#面向对象总结二继承

    继承是面向对象的三大特性之一。 1.继承 1.1概念:一个类从其他类派生时,派生类隐式获得基类除构造函数和析构函数...

  • 面向对象五

    面向对象高级二 总结 PHP 里的面向对象、继承方式 JS 里的继承方式 call(构造函数伪装) 和 proto...

  • 浅谈OC的多态

    学过面向对象语言的小伙伴都知道,面向对象的语言(Java,C#,OC)都有三大特性:封装、继承、多态。 所谓封装,...

  • C# 继承、多态、重载、重写

    继承 继承是面向对象的编程的一种基本特性。 借助继承,能够定义可重用(继承)、扩展或修改父类行为的子类。C# 和 ...

  • 2018-06-27

    JavaScript(面向对象+原型理解+继承+作用域链和闭包+this使用总结) 一、面向对象 1、什么是面向对...

  • C#面向对象之——继承

    为什么单独把继承拿出来呢,因为我觉得理解继承很重要,对理解这门语言有很大的帮助!

  • C#_继承

    面向对象编程的三大特性——封装、继承、多态。这里要介绍一下继承,其他二者有机会在做介绍。 本文讨论的是在C#下的继...

  • c# 基础之继承

    继承 (Inheritance) 是面向对象语言中的重要特征之一。在 C# 语言中仅支持单重继承,主要用于解决代码...

  • 2017 10 20

    今天的课上内容是C#面向对象程序设计。三个基本特性:封装 继承 多态。还有C#中的类和对象。和之前学的相似 但也有...

  • JavaScript之面向对象编程

    五、面向对象编程 目录:面向对象原型继承、面向对象class继承(ES6引入的) 1.面向对象原型继承 类:模板 ...

网友评论

      本文标题:C#面向对象总结二继承

      本文链接:https://www.haomeiwen.com/subject/glcenttx.html