Head First C# 中文版 图文皆译 第七章 接口和抽象类 page278

本文对比了抽象类与接口的特点,介绍了抽象类如何结合两者优势:既能规定子类必须实现的方法,又能提供部分方法的具体实现。

抽象类就好像是类和接口的混合物


假设你需要一个像接口一样的东西,它要求类实现某些特定的方法、属性。但是你还需要在其中写一些代码实现,这样某些特定方法就不用在子类中去实现。这时,你需要的是抽象类。你可以获得借口的特性,而同时可以像在普通类中一样的写实现代码。

 

抽象类和普通类类似


定义抽象类的方式和普通类一样。其中可以有字段和方法,也可以从其他类继承,和普通类一样。基本没有什么新东西需要学,因为你已经知道抽象类可以做什么了!


抽象类和接口类似


创建一个实现某个接口的类,就需要实现接口中定义的所有方法、属性。抽象类也可以做到这一点--抽象类可以包含一些方法、属性的声明,就像接口一样,这些方法、属性必须被派生类实现。


抽象类不可以被实例化


抽象类和实现类最大的不同就是不可以用new关键字来实例化抽象类。如果你这样做了,C#将会在编译的时候报错。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值