1
using
System;
2
3
namespace
类_阻止派生类重写虚成员
4
{
5
//
声明一个抽象类Animal(用abstract关键字声明抽象类)
6
public
abstract
class
Animal
7
{
8
//
基类的抽象方法Voice(); 功能在派生类实现
9
public
abstract
void
Voice();
10
}
11
12
//
派生类(子类)继承自Animal
13
//
14
public
class
Horse : Animal
15
{
16
//
用sealed修饰重写的Voice()方法,无法在Horse的派生类中重写
17
public
sealed
override
void
Voice()
18
{
19 Console.WriteLine("马发出嘶....嘶....嘶....嘶的声音");
20 }
21 }
2223// 派生类(子类)继承Horse类24publicclass Test : Horse
25 {
26/*--------------------------------------------------
27 // 无法重写Horse基类的密封(sealed)的方法Voice()
28 public override void Voice()
29 {
3031 }
32 ---------------------------------------------------*/33 }
3435class Program
36 {
37staticvoid Main(string[] args)
38 {
39// 抽象类不能被实例化
40//Animal a = new Animal(); // 编译错误41 Horse h = new Horse();
42 h.Voice();
4344 Console.ReadLine();
45 }
46 }
47 }
原文:http://www.cnblogs.com/DuanLaoYe/p/5357964.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!