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#中的抽象类与接口的详解的详细内容!

返回前面的内容

相关阅读 >>

详细分析 .net core 构成体系(图)

两种.net定时发送邮件代码实例

文件事物管理transactional file manager的实例详解

c#cs与bs数据请求交换

c#中值类型与引用类型的详细介绍

c#连接ftp时路径出现问题的解决方法

mvc实现下拉框联动的实例详解

javascript client 如何获取 telerik radgrid的值

.net mymvc框架处理返回值的教程

关于.net mvc中如何使用forms验证的具体介绍

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




打赏

取消

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

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

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

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

评论

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