C

雅轩聊科技 2024-07-09 06:35:54

哈喽,你好啊,我是雷工!

今天继续学习软件接口的相关内容,以下为练习笔记。

01 抽象类与抽象方法

抽象方法必须放到抽象类中,但是一个抽象类是可以没有任何抽象方法的;

02 父类、子类与接口

父类一般只放共同的行为,对于部分子类的行为,不能全部放到父类中,因为后面扩展的时候这些会自动的延续到子类,所以我们可以把这部分抽象为接口。

谁具有这样的行为,谁实现接口,进行统一的管理;

即接口侧重的是行为的规范,继承侧重的是复用;

03 接口规定

3.1、接口命名必须以I开头;

3.2、接口的方法都是没有实现的方法;

3.3、接口的方法不需要写public,因为默认都是public,接口没有私有的(这点与Java不同);

3.4、接口既可以抽象方法,也可以抽象属性,关键字是interface;

04 接口的特点

接口具有强制性,一个类实现一个接口,就必须把接口所有的方法都实现,并且不能改变方法的签名;

05 面向细节编程与面向抽象编程

Panda panda = new Panda();

以前一般是这样编程,即针对细节具体编程;

针对细节编程,就是使用的这个对象是普通的对象,这个对象里有什么属性、方法,就能使用什么属性、方法;

与细节编程相对的是面向抽象编程,就是关注的是这个抽象的行为(抽象方法和接口),具体如何实现,无需关心;

针对细节编程和面向对象编程的不同:细节必须实现,如果没有实现,则无法提供给调用者;但是面向抽象编程则不同;

抽象编程只要将实现的行为提前规定好,这样调用者就可以使用了;

面向抽象编程目的:

①实现扩展;

②实现团队分别开发;

06 接口和抽象类的区别

①接口侧重的是功能的封装,抽象类侧重的是代码的复用,虽然两者都可以实现多态,但是在扩展中,若没有要继承的内容时,一般直接使用接口,即使有要继承的内容,通常把公共内容放到父类中,然后将需要多态的行为,放到接口中。

②接口更简洁,使用更方便,在框架设计中,抽象的都会变成接口,而不是使用抽象类。

07 多态的基本原则

依据的是里氏替换原则;

08 接口分类

①自定义接口,根据我们实际的项目开发,自己定义的接口;

②系统接口,也就是.NET平台已经封装好的,可以给我们直接应用的接口,例如IList<T>接口;

09 后记

以上是关于接口的练习笔记,

欢迎大家积极评论点赞转发,也可以在交流群内探讨。

0 阅读:0

雅轩聊科技

简介:感谢大家的关注