抽象类和接口

今天我复习了一下抽象类和接口.

 

1.抽象类的概念

 

C#中使用关键字abstract来定义抽象类和抽象方法。不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们的实例。使用abstract在一个类声明中表示该类倾向要作为其它类的基本成员被标示成abstract,或被包含进一个抽象类,必须被其派生类实现,一个抽象类可以包含抽象和非抽象方法,当一个类继承于抽象类,那么这个派生类必须实现所有的基类抽象方法。我们不能把关键字abstractsealed一起用在C#中,因为一个密封类不能够被抽象。

 

2.抽象类特征

 

   抽象类不能被实例化;抽象类不可以包含抽象方法和访问器;不能把抽象类用密封(sealead)来修饰,那就意味着类不能被继承,这违反抽象类被继承的原则;抽象类的非抽象子类必须实现其继承的所有抽象方法和抽象访问器;通过声明派生类也为抽象,我们可以避免所有或特定的虚方法的实现,这就是抽象类的部分实现。

 

3.抽象类的格式

 

   [code]Public abstnact class Text{

Public void Get(){

 

}

Public abstnact void Get(int a){

 

Class son:Text{

 

 Publicc void Get (int a){

 

      }

   }

    }

}[/code]

 

4.接口概念

 

    接口描述的是可属于任何类或结构的一组相关功能,所以实现接口的类或结构必须竖线接口定义中指定的接口成员。接口使用interface关键字进行定义,可由方法,属性,事件,索引器这四种成员类型的任意组合构成。

 声明:此篇文档时来自于【狗刨学习网】社区-unity极致学院,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。

5.接口的特性

 

    接口类似于抽象类,不能直接实例化接口;接口中的方法都是抽象方法,实现接口的任何非抽象类型都必须实现接口的所有成员。接口不能包含常量,字段,运算符,实例化,构造函数,析构函数或类型,不能包含静态成员。接口成员是自动公开的,且不能包含任何访问修饰符。接口自身可从多个接口继承,类和结构可继承多个接口,但接口不能继承类。

 

6.接口的格式

 

[code]Public interface Test{

 

Public void Get();

 

Public void Get(int a);

}

Class son:Text{

 

Public void Get();

 

Public void Get(int a);

 

}

Class son:Text{

 

Public void Get(){

   

  }

}


Public void Get(int a){

 

}[/code]



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值