zoukankan      html  css  js  c++  java
  • C# abstract抽象类的使用

    一.简介

      abstract意思是抽象。在C#中,abstract修饰符只用在两个地方,一是修饰类,二是修饰方法。被abstract定义的类或方法,叫做抽象类或抽象方法。

      在将abstract修饰符的用法时,可以直接讲抽象类的用法,因为抽象方法必须存在于抽象类之中。

    二.例子 

    public abstract class A
    {
        public abstract void Func();
    
        public void Func2()
        {
            Console.WriteLine("A");
        }
    }
    
    public class B : A
    {
        public override void Func()
        {
            Console.WriteLine("B");
        }
    }

       从上面可以看出来,A类是抽象类,里面带着个抽象方法Func。B类继承了A类,并通过override重写实现了Func方法。

      这样定义一个抽象类的好处是,如在A类中定义的抽象方法Func,由于是抽象的,所以继承了A类的派生类都必须重写去实现这个方法,能够给其子类一定的约束,类似接口。

      抽象类的使用场景应该是,如果设计一个类的目的是用来被其它类继承,它代表一类对象所具有的公共属性和方法,那就可以设置为抽象类。

    三.总结

      1.包含抽象方法的类都是抽象类,该类必须加abstract修饰。

      2.抽象类中不必一定包含抽象方法,此时在抽象类的方法必须是静态方法。

      3.抽象类不能实例化,但仍然可以具有构造函数。

      4.在实现抽象类时,子类必须实现抽象类中声明的抽象方法。

      5.抽象类中可以包含非抽象的方法。

      6.继承的子类没实现其中的抽象方法,那么这个子类也是抽象类。

      7.抽象方法也是虚拟的,但不需要使用virtual关键字。

      8.抽象类不能被sealed密封。

      9.在抽象方法声明中不能使用static修饰符。

      

  • 相关阅读:
    JavaScript事件详解
    JavaScript事件
    十六进制转十进制原理
    java:数组复制
    java:数组扩容
    MySQL---Day2
    Pyhton学习——Day47
    MySQL---Day1
    Pyhton学习——Day46
    Someing-About-Work
  • 原文地址:https://www.cnblogs.com/shadoll/p/14491693.html
Copyright © 2011-2022 走看看