您的位置: 网站首页 > 程序开发 > C#程序设计 > 第6章 C#面向对象 > 【6.5 抽 象 类】

6.5 抽 象 类

 

抽象类是一种特殊的类,与普通类相比,该类不能被实例化。本部分介绍抽象类和抽象方法的相关知识。

6.5.1  抽象类简介

抽象类的用途是提供多个派生类可共享的基类的公共定义,并使用abstract关键字定义。使用abstract关键字不仅可以创建仅用于继承用途的类,也可以定义类成员,即定义派生的非抽象类的功能。如下代码定义了一个抽象类:

abstract class Class1

{

}

6.5.2  声明抽象类

抽象类也不能实例化,这点与接口相同,但抽象类中可以定义方法的实现。如下代码定义了一个抽象类,并定义了其方法、属性及其代码实现。

1.目的说明

创建一个Windows控制台应用程序,演示如何创建一个抽象类及其方法。

2.实现步骤

1)创建一个名为ClassAbstract的控制台应用程序项目。

2)修改Program.cs文件的内容如下:

namespace ClassAbstract

{

    class Program

    {

        static void Main(string[] args)

        {

        }

    }

 

    abstract class Class1

    {

        // SayHello方法及其实现

        void SayHello()

        {

            Console.WriteLine(hello);

        }

 

        // Hello属性及其实现

        string Hello

        {

            get

            {

                return hello;

            }

            set

            {

                hello = value;

            }

        }

 

        string hello = "Hello World!";

    }

}

3.运行结果

该实例无结果。

4.代码分析

代码中的Class1是一个抽象类,该类用关键字Abstract定义。类中包含了方法,属性和字段,但是该类不能被实例化。当在Main方法中加入创建Class1实例的语句后,将会出现如图6-18所示的错误。

6-18  运行结果