`
geeksun
  • 浏览: 953094 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

面向抽象编程和面向接口编程

 
阅读更多

面向接口编程,是指面向超类型编程,比如抽象类和接口,或super class,这样的话,可以按照约定进行获取数据,不用关心内部处理的细节,封装了业务逻辑,维护了系统的稳定性和系统间的低耦合性。

 

面向抽象编程,是指面向抽象角色编程,而不面向具体类编程。好处是程序可以灵活地增加功能,良好的解耦性、可扩展性,符合“开-闭”准则。

 

抽象类:

类中有抽象方法,继承类必须实现这些抽象方法。(也可以没有抽象方法,而只是实现该类而已,这是纯类型抽象)。

接口:

类中的方法全部为抽象方法,变量为静态变量,接口的方法封装了不同的行为,接口的实现类必须实现这些抽象方法。

 

继承是“a is A”的关系,接口实现是 "hava a"的关系。

因为继承的子类必须是继承类的子类, 接口只是为了添加一个行为功能而已。接口更多的是使用了组合模式,来添加功能。

 

区别:

抽象类和接口都是超类型,抽象类是对事物的抽象,接口是对行为的抽象。

这样,在需要使用事物抽象时使用抽象类,在需要使用行为抽象时使用接口。

 

小结:

抽象类中不一定有抽象方法, 只要有abstract access control modify, 也可以类里没有abstract method,因为这个只是抽象角色而已。   只是让这个抽象无法直接实例化,必须继承这个角色才能实现这个抽象产品。

分享到:
评论

相关推荐

    实验项目C、面向抽象和面向接口编程

    实验项目C、面向抽象和面向接口编程 一、实验目的 ★专题:继承基础和面向抽象编程★ 1、掌握继承的使用。 2、掌握Object类的基本用法。 3、理解和掌握抽象类的用法。 4、理解final关键字。 5、掌握和理解多态的运用...

    面向抽象类接口编程.rar

    用C++语言实现的面向抽象类接口编程的具体案例,代码实现socket通信和产品的加密,所有代码均经过测试

    java实验 面向抽象与接口编程

    java实验

    面向接口编程详解

    我想,对于各位使用面向对象编程语言的程序员来说,“接口”...而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是 什么意思?有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问。

    Java面向抽象与接口编程.docx

    Java面向抽象与接口编程.docx

    实验五,面向抽象与接口编程.zip

    实验五,面向抽象与接口编程.zip

    c#数据库面向接口编程

    一个简单的面向接口编程的三层架构连接数据库项目,运用抽象工厂模式实现数据层和业务层完全解耦。包含数据库文件和完整源代码。数据库文件为SQL service数据库文件。

    面向接口的编程

    如何进行面向接口和面向抽象编程,这种编程的最大好处是带来系统更加灵活,更易扩展

    spring简单模拟(面向抽象/接口编程)

    NULL 博文链接:https://cdxs2.iteye.com/blog/1939866

    欧柏泰克:.NET简谈面向接口编程

    面向接口编程就是将类与类之间的关系提升到一个更高的抽象层次;面向接口编程是一种境界,作者将为大家作一个入门介绍,希望对你有帮助。

    java利用接口和抽象类改写求圆的面积和梯形的面积.docx

    java利用接口和抽象类改写求圆的面积和梯形的面积.docx

    Delphi面向对象编程思想

    多态、接口、虚方法、抽象类等概念和面向对象编程上的具体应用。  建立在动态绑定机制上和类型转换机制上的面向对象高级编程技巧。  为了实现程序的可维护性、可扩展性和可重用性,而对封装、界面和业务对象的分离...

    抽象类和接口的区别

    在Java中,可以通过两种形式来体现OOP(Object Oriented Programming,OOP,面向对象程序设计)的抽象:接口和抽象类。 这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换...

    Java 基础之面向对象编程教程

    Java 基础之面向对象编程教程,主要类和对象、如何定义类、成员函数、访问控制修饰符、构造方法、类变量、类方法、方法重载、方法覆盖、抽象、封装、继承、多态、抽象类、接口和New 运算符等概念的介绍和例题介绍...

    计算机科学与编程中的抽象学.pdf

    第4章 抽象了的运行系统和虚拟机上的抽象编程(面向程序员的抽象编程) 因为编程都是解决运行问题跟语言语法本身问题的双重过程,所以,对于寻求更高级的编程支持(目前我们谈到的是C这样的系统实现语言),唯有改变...

    JAVA 面向对象程序设计第4章 抽象类和接口.pptx

    第4章 抽象类与接口;回顾;本章内容;4.1 抽象类;4.1 抽象类;4.1.1 抽象方法和抽象类;4.1.1 抽象方法和抽象类;4.1.1 抽象方法和抽象类;4.1.1 抽象方法和抽象类;4.1.1 抽象方法和抽象类;...4.4 接口编程案例;4

    src.zip Java的面向对象编程·讲解代码

    接口和抽象类 包和访问修饰符 构造函数和析构函数 成员变量和局部变量的区别? 适用人群: 这段语言描述的Java的面向对象讲解代码源码资源适用于那些对面向对象编程(Object-oriented programming, OOP)有一定了解...

Global site tag (gtag.js) - Google Analytics