C#中的抽象类与接口的详解


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

/// <summary>

/// 实现一个爬行动物的动作接口

/// </summary>

interface IAnimalClimb

{

void Climb();

}

/// <summary>

/// 实现一个会叫的动物的动作接口

/// </summary>

interface ICry

{

void Cry();

}

/// <summary>

/// 实现一个动物抽象类

/// </summary>

public abstract class Animal

{

//动物的名字

public string Name { get; set; }

//动物的颜色

public string Color { get; set; }

//动物抽象类的共有方法

public abstract void Sleep();

public abstract void Breathe();

}

/// <summary>

/// 定义鸟类,通用方法是会飞

/// </summary>

public class Bird : Animal,ICry

{

public override void Sleep()

{

Console.WriteLine("Bird派生类继承了基类的Sleep()方法");

}

public override void Breathe()

{

Console.WriteLine("Bird派生类继承了基类的Breathe()方法");

}

//鸟类可以继承统一的接口动作,例如:叫

public void Cry()

{

Console.WriteLine("Bird派生类继承了接口ICry的叫的方法");

}

}

/// <summary>

/// 定义爬行动物类

/// </summary>

public class Snake : Animal, IAnimalClimb

{

public override void Breathe()

{

Console.WriteLine("Snake派生类继承了基类的Sleep()方法");

}

public override void Sleep()

{

Console.WriteLine("Snake派生类继承了基类的Sleep()方法");

}

//爬行动物可以继承统一的接口动物,例如:爬

public void Climb()

{

Console.WriteLine("Snake派生类继承了接口IAnimalClimb的爬的方法");

}

}

以上代码,只是说明问题,比较简单;
第三阶段(优化阶段):就象问题3一样,我们在做一个抽象类或者接口的时候首先考虑的是能用就行,结果就是定义的类或接口比较多,难以维护和扩展,或者就是类之间有交集,那怎么优化继承关系?怎样才能使得程序具有可维护性和扩展性呢?
我个人建议具备以下几个方面方可:
(1)要有扎实的基础知识和深厚的基础功底;
(2)要有一个多问、多思的心;对于抽象类和接口多问问,为什么不使用抽象类而要使用接口?为什么在这个地方使用接口合适?
(3)多看看前辈们是怎么设计接口和类的,这方面的资料网上搜搜不少;
(4)个人建议多看看设计模式这方面的知识,因为他们是前辈在设计时的经验和思想;

以上就是C#中的抽象类与接口的详解的详细内容!

返回前面的内容

相关阅读 >>

asp.net一些经典的问题详解

c#中vb.net给word文档添加/撤销书签的实例

详细了解在.net core 上运行的wordpress

c#如何计算传入的时间距离今天的时间差的实例分享

.net中json数据进行序列化和反序列化操作分析

c#开发微信门户及应用(一)之微信接口的如何使用(图)

有关c#工厂模式简单讲解

.net是什么

.net使用cache框架的实例介绍

c#如何连接加密数据库(sqlite)的示例分享

更多相关阅读请进入《csharp》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...