抽象类和接口的区别

2024-11-01 22:45:06

1、本文以C#语法为例说明,打开visual studio,创建任意一个项目类型都行。本文以创建一个控制台应用程序为例,当项目创建好之后,再创建一个接口类,叫做IAnimal,与一个抽象类Person

抽象类和接口的区别

3、接口中的方法只能有方法体,不能有具体的实现代码。抽象类中的方法,如果不加abstract就可以有方法体的实现代码,一旦加上abstract这个关键字的方法,就是抽象方法,这样的方法,不能有方法体

抽象类和接口的区别

5、接口并不严格要求里面的方法有相同的共性与联系,比如,在IAnimal方法中,可以加入物品相关的方法。但是,抽象类通常是对一种实物的抽象,所以,原则上不会将不相关的方法加入进来,因为,抽象类中定义的方法,子类能够自动获得并使用

抽象类和接口的区别

7、子类实现接口的时候,必须将接口中的所有方法都实现,无一例外。但是,在抽象类中的方法,如果不是使用abstract修饰的抽象方法,就可以不实现,子类自动获得这个方法的使用权限

抽象类和接口的区别
猜你喜欢