c#类的相关知识

来源:互联网 发布:动漫电影推荐 知乎 编辑:程序博客网 时间:2024/05/22 14:18

一.类的继承

1.子类默认只继承基类的无参数构造函数,如果基类中没有无参数的构造函数则必须在子类中创建一个

2.密封类不允许被继承sealed

3.在子类中定义与基类同名方法时,使用new来隐藏基类成员

new public void Move(){}

如果需要同时使用类和类该成员时,如下

base.Move()

this.Move()

4.类中虚成员使用virtual修饰,在子类中重写基类虚成员时使用override

5.抽象类不能被实例化(有时候我们希望基类被继承后使用,基类本身的实例其实意义不大),抽象方法必须在子类中重写

6.继承的局限性,一个子类也许包含多种特性,一个基类无法满足,但是c#中不包含多重继承,这时需要使用接口

二.接口

1.接口使用interface来修饰,接口只定义不实现具体在接口的类中实现,接口可以多重继承、多种具体实现

2.定义接口如下

public interface IUnit{}

接口实现如下

public class CUnit : IUnit{}

3.接口的继承

interface I3 : I2,I3{}

在对接口I3实现的时候必须将I2和I3中方法进行实现

4.实现多个接口

如果多个接口含有同名方法,但是实现功能又不一致,这时需要指定接口对象来实现不同方法

interface I1{void Test();} interface I2{void Test();}这里有两个接口I1和I2,他们都有Test方法,在下面对其进行实现

class C1 : I1,I2

{

void I1.Test(){...}

void I2.Test(){...}

}


原创粉丝点击