`
阅读更多
今天凌晨coding的时候发现一个很有趣的现象。“Object类是Java体系的单根父节点,所有Java类都从Object类继承。”这句话是大部分green hand都知道的Java金句,毋庸置疑。那如果我问你接口和Object类的关系呢?答案是“没有关系”。请看下面的代码:

1Map map = new HashMap();
2map.clone();

Map是一个接口,HashMap是一个类。clone()方法在Object类中定义,因此我下意识认为第二行可以这么写。结果编译器报错:clone()方法未定义。这个错误让我很郁闷,看了半天doc才发祥原来Map是一个接口,而接口和Object类没有任何关系,所以Map也就没有继承clone()。于是把代码改成下面的样子:

1HashMap map = new HashMap();
2map.clone();

这样就可以了。
分享到:
评论

相关推荐

    接口与Object类

    在深入探讨“接口与Object类”这一主题之前,我们首先明确两个核心概念——接口(interface)与抽象类(abstract class),以及它们与Java基础类库中不可或缺的Object类之间的关系。 ### 接口与抽象类 #### 接口...

    Object arx 类天正墙体 的 自定义实体

    Object ARX,全称为AutoCAD Object Application Programming Interface,是Autodesk公司为开发基于AutoCAD的应用程序提供的一种编程接口。通过Object ARX,开发者可以直接访问AutoCAD的内部数据结构和图形系统,创建...

    接口和抽象类的区别_--相信你看完不会再混淆了

    #### 面向接口编程与面向对象编程的关系 面向接口编程(Programming to Interfaces)与面向对象编程(Object-Oriented Programming, OOP)并非并列的概念,而是后者的一个重要组成部分。面向对象编程强调的是通过...

    Object转xml或xml转Object

    在Java中,可以通过注解(@XmlElement、@XmlAttribute等)来指定对象属性与XML元素的映射关系。如果XML结构复杂,可能需要定义多个类来构建对象模型。 Object转XML时,我们需要先定义好对象的类结构,然后创建对象...

    Android 三方数据库ObjectBox使用

    ObjectBox是一款专门为移动设备优化的关系型数据库,它以其高性能、易用性以及对对象持久化的支持而受到广泛欢迎。 ObjectBox的核心特性包括: 1. **高性能**:ObjectBox使用了自己的数据存储引擎,针对移动设备...

    AS3.0类关系图.

    类关系图会展示这些基础类和接口,以及它们与其他类的关系。 2. **包结构**:AS3.0的类分布在不同的包中,如`flash.display`、`flash.events`等。这些包组织了相关的类,类关系图会清晰地标明每个类所属的包。 3. ...

    接口对接类与相关xml

    在Java编程中,接口对接类和相关XML文件是...总结,接口对接类与相关XML在Java开发中扮演着核心角色,它们共同推动了代码的模块化、可扩展性和灵活性。理解并熟练运用这些概念,对于开发高效、健壮的应用程序至关重要。

    Qt类关系图

    Qt4的类关系图可以帮助开发者快速找到所需的功能类,理解其在整个框架中的位置,以及如何与其他类协同工作。例如,QWidget是所有用户界面对象的基类,而QApplication则是应用程序的入口点。通过类图,你可以看到...

    java抽象类与接口.doc

    在类与类的关系中,Java支持单一继承(一对一,即一个类只能继承一个父类),但类与接口之间的关系是一对多的,一个类可以实现多个接口。同样,接口与接口之间也可以通过`extends`实现继承,形成一对多的关系。 在...

    分层开发jdbc, entity层, service的接口与实现类

    在"分层开发jdbc, entity层, service的接口与实现类"这个主题中,我们将探讨这三层在Java应用中的角色和功能。 首先,我们来看JDBC(Java Database Connectivity),它是Java访问数据库的标准API。JDBC提供了一组...

    actionscript3.0类的关系图

    关系图还会展示类与包的关系,ActionScript 3.0使用命名空间(Package)来组织类,如`flash.display`包含了与舞台显示相关的类,`flash.events`包含了事件处理相关的类。通过查看关系图,开发者可以快速定位到特定...

    采用普通类,接口,和抽象类实现单继承和多继承增,删,改,查

    在编程领域,面向对象编程(Object-Oriented Programming, OOP)是常用的设计模式,它允许我们通过类、对象、接口以及继承等概念来构建复杂的软件系统。在Java或C#等支持多继承的语言中,单继承和多继承是两种重要的...

    iOS 面试题

    Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系。 2.#import 跟#include 又什么区别,@class呢, #import<> 跟 #import”"又什么区别?

    Object-XML文件的相互转换分析

    Spring的`BeanDefinition`接口是连接XML配置和实际对象的关键,它代表了一个bean的完整定义,包括其类、属性值、依赖关系等。`DefaultListableBeanFactory`使用`XmlBeanDefinitionReader`从XML文件加载bean定义,...

    Matlab Object Oriented Programming

    2. **对象(Object)**:类的一个实例,拥有类定义的所有属性和方法。 3. **属性(Properties)**:用于描述对象的状态或特征的信息。 4. **方法(Methods)**:定义在类中的函数,用于执行特定的操作。 5. **继承...

    Object-C教程

    - **对象(Object)**:类的实例。 - **消息(Message)**:对象之间通信的方式,实际上是对方法(Methods)的调用。 - **继承(Inheritance)**:子类可以继承父类的属性和方法。 - **封装(Encapsulation)**:通过隐藏...

    OLE/COM Object Viewer

    5. 浏览接口继承关系:查看器可以帮助理解接口之间的继承层次,这对于设计和实现多层接口结构的组件至关重要。 6. 了解版本信息:对于包含多个版本的控件,查看器可以显示不同版本的差异,帮助开发者决定何时应该...

    The Object-Oriented Thought Process, 5th Edition 9780135181966.pdf

    4. 抽象(Abstraction):通过定义一个对象的公共接口来隐藏实现细节,使用户能够通过该接口与对象交互。 5. 类(Class):是对象的模板,用于定义创建对象时所用的属性和方法。 6. 对象(Object):是类的实例,...

    类、抽象类、接口、继承和对象(java).doc

    在Java中,一个类可以实现多个接口,但只能继承一个父类(除了Object类,它是所有类的最终父类)。 继承是类之间的“is-a”关系,允许一个类(子类)继承另一个类(父类)的属性和方法。子类可以重写父类的方法,以...

    abap object

    SAP Web Application Server 6.10/6.20进一步引入了类之间的友好关系(Friendship),以及对象服务(Object Service),允许对象存储在数据库中。最后,SAP Web Application Server 6.40引入了共享对象(Shared ...

Global site tag (gtag.js) - Google Analytics