`
xyue13
  • 浏览: 13895 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

也谈接口和抽象类区别(二)

阅读更多
http://www.cnblogs.com/huguohong/archive/2007/05/23/757503.html

接口是对行为的抽象;

抽象类是对类的抽象。

类是对对象的抽象。

类包含属性、方法、事件。

这里的方法就是“行为”。
属性可以理解为类具有的“状态”。
事件是类告知使用者(外部类)其状态发生变化的特殊方法。

也就是说,接口是对类的局部(行为)进行的抽象,而抽象类是对类整体(属性、方法、事件)的抽象。

如果只关注行为抽象,那么也可以认为接口就是抽象类。
打个比方说,汽车、自行车、三轮车,可以抽象其为运输工具,
运输工具就是关注“行为”而抽象的。

总之,不论是接口、抽象类、类甚至对象,都是在不同层次、不同角度进行抽象的结果,它们的共性就是抽象。
分享到:
评论

相关推荐

    浅谈Java抽象类和接口的个人理解

    抽象类和接口是Java编程语言中两个非常重要的概念,它们都是用来描述对象的,但是它们之间有着很大的区别。 一、抽象类 抽象类是用来描述同一类事物的公共部分的高度提取。它可以定义自己的成员变量和成员方法,並...

    C#类和接口、虚方法和抽象方法及值类型和引用类型的区别等等.........

    这里有好多比较好的资料,很适合正在学习Java和对Java想进一步了解的朋友. 如: 一.C#类和接口、虚方法和抽象方法及值类型和引用类型的... 二 .C#中 接口与抽象类 的区别 三.浅谈java封装思想 四.抽象类和接口的区别

    Visual C# 2005开发技术(抽象类、多态及接口、 XML编程)

    综上所述,《Visual C# 2005开发技术》教程全面覆盖了C#编程的关键技术,从抽象类和接口设计到多态性实现,再到XML编程和ASP.NET控件的使用,旨在帮助开发者熟练掌握C# 2005的开发技能,提升软件开发效率。...

    浅谈Java的接口的作用和意义.pdf

    接口和抽象类不同,抽象类可以实现某些方法,而接口则不能。接口的概念较为抽象,可以理解为是一系列方法和特征的集合。 在类中定义一个接口有什么意义呢?类所描述的是一个实体,包含试题的状态和动作。一个实体...

    浅谈Java的接口的作用和意义.docx

    1. 定义接口的重要性:在 Java 编程中,abstractclass 和 interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才使得 Java 成为面向对象的编程语言。 2. 定义接口有利于代码的规范:对于一个大型...

    Python3之接口类(InterfaceClass)浅谈

    `ABCMeta`元类是抽象基类的元类,当子类化一个使用`ABCMeta`作为元类的类时,如果没有实现所有标记为`abstractmethod`的方法,那么子类也将被视为抽象类,无法直接实例化。 ```python from abc import abstract...

    浅谈java的接口和C++虚类的相同和不同之处

    Java的接口和C++的虚类都是面向对象编程中用于实现多态性的关键概念,但它们在设计和使用上有着显著的区别。...在设计系统时,开发者需要权衡抽象类和接口的优缺点,以便实现最佳的可扩展性和灵活性。

    C#面向对象设计模式纵横谈(8):Bridge 桥接模式(结构型模式) (Level 300)

    3. 定义抽象实现接口(Refined Abstraction):这个接口或抽象类继承自抽象接口或抽象类,提供了更多的业务逻辑,同时保持对实现部分的引用。 4. 创建具体实现类(Concrete Refinements):这些类实现了抽象实现...

    20051115pm--C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂模式(创建型模式)

    抽象类和接口是两种不同的面向对象编程概念。抽象类是一个不能被实例化的类,它可以包含抽象方法和非抽象方法,是其他类的基类,体现了IS-A的关系。接口则只包含方法签名,不包含实现,主要用于定义行为规范,体现了...

    浅谈C# 抽象类与开闭原则

    总结起来,C#中的抽象类是一种强大的工具,用于定义共享接口和行为,而开闭原则则是指导我们设计可扩展和可维护系统的准则。正确运用这两个概念,可以使我们的代码更符合面向对象设计的原则,从而提升软件质量。在...

    谈Java程序设计课程中的“接口”教学技巧.pdf

    我们也可以使用讨论教学法,让学生通过讨论和交流来理解和应用接口。此外,我们还可以使用项目教学法,让学生通过完成项目来理解和应用接口。 三、提高接口教学质量 为了提高接口教学质量,我们可以从以下几个方面...

    李建忠 C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂模式(创建型模式)

    在C#中,抽象工厂模式的核心在于抽象工厂接口和具体的实现工厂类。抽象工厂接口定义了一系列用于创建相关或依赖对象的接口,而具体实现工厂类则提供了这些接口的具体实现。通过这种方式,抽象工厂模式确保了客户端...

    C#面向对象设计模式纵横谈(7)

    在C#中,桥接模式可以通过接口或抽象类来实现,它能够很好地处理系统中抽象类和实现类数量过多导致的复杂性问题。 首先,我们来看桥接模式的基本结构。桥接模式包括四个主要角色: 1. **抽象接口(Abstraction)**...

    浅谈java 面对对象(抽象 继承 接口 多态)

    在Java中,抽象主要体现在抽象类和抽象方法上。抽象类是一种不能实例化的类,它通常包含抽象方法,即没有具体实现的方法。抽象类是作为其他类的基础模板,子类可以通过继承抽象类来实现抽象方法,提供具体的实现。...

    浅谈Java面向接口编程

    浅谈Java面向接口编程 面向接口编程是Java编程中的一种重要思想,它与面向对象编程紧密相关。在本文中,我们将探讨面向接口编程的概念、接口的本质、面向接口编程的思想内涵、面向接口编程的好处等方面。 一、面向...

    C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂模式(创建型模式) (Level 300)

    在C#中,这可能是一个接口或抽象类,如`IButton`或`IWindow`。 4. **具体产品(Concrete Product)**:实现了抽象产品接口,提供了具体的产品实例。在C#中,这将是实现了`IButton`或`IWindow`的类,如`WindowsButton...

    C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂模式(创建型模式)

    抽象工厂(Abstract Factory)是一个接口或抽象类,定义了一组用于创建相关对象的接口。这些对象通常属于同一产品族,也就是它们具有某种共同的特性或者相互之间有紧密的联系。例如,我们可以有一个WindowsFactory来...

    C#设计模式之AbstractFactory

    在C#编程中,设计模式是一种经过验证的解决常见软件设计问题的最佳实践。"Abstract Factory"模式是其中一种,它属于创建型...在C#中,通过接口和抽象类来实现这一模式,可以充分利用语言特性,实现良好的封装和解耦。

    总结一——浅谈Java的类与对象

    接口(interface)是另一种重要的面向对象特性,它定义了一组抽象方法,用于规范类的行为。 总结来说,Java的类与对象是实现面向对象编程的基础,它们帮助我们构建可重用、可扩展的代码结构。理解并熟练掌握这些...

Global site tag (gtag.js) - Google Analytics