抽象类 ??--->接口

本文详细解释了抽象类和接口的概念及其在项目中的作用。抽象类作为一种不完全的类,可以包含抽象方法和具体实现,而接口则专注于行为规范,其中所有成员默认为公共且未实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

抽象类(abstract):

抽象类是一种特殊的类,特点如下:

1. 抽象方法只做声明,而不包含实现,可以看成是没有实现的虚方法;

2.抽象类不能被事例化,除此,跟其他类的特性一样;

3.具体派生类必须覆盖基类的抽象方法;

接口(interface):

1.不能被事例话;

2.只能包含实现的方法声明;

3.接口中的所有成员默认为是public,因此接口中不能有private修饰符;

接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!
而类是负责功能的具体实现! 在类中也有抽象类的定义。

抽象类与接口的区别在于:

区别一:
抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。
但接口是一个行为的规范,里面的所有东西都是抽象的!
一个类只可以继承一个基类也就是父类,但可以实现多个接口。

例如:飞机会飞,鸟也会飞,那么我们可以这么说他们都是继承了同一接口“飞”,“歼十”是属于飞机的抽象,鸽子是属于鸟的抽象;

区别二:

抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。

public abstract class AbsTest
{
public virtual void Test()
{
Debug.WriteLine( "Test" );
}
public abstract void NewTest();
}
public interface ITest//为了项目的规范;
{
void Test();
void NewTest();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值