Java中继承和实现的区别【单继承,多实现】
继承:如果多个类的某个部分的功能相同,那么可以抽象出一个类出来,把他们相同的部分都放到父类中,让他们都继承这个类。
实现:如果多个类处理的目标都是一样的,但是处理的方法不同,那么就可以定义一个接口,让他们实现这个接口,各自通过自己的处理方法来处理那个目标。
也可以理解为继承是通过部分相同的功能,产生不同的结果。而实现则是通过不同的方法来实现同一个结果。
继承和实现的区别:
1、数量不同:在面向对象编程的时候只能是单继承,但是实现接口可以有多个,简单点说,就是实现接口可以有好多个,但是继承的中父类只能只有一个,因为父亲只有一个,这说明了继承在Java中具有单根性,子类只能去继承一个父类。总结就是:单继承,多实现。
2、修饰不同:继承:extends; 实现:implements
3、属性不同:在接口中只能定义全局变量和无实现的方法。而在继承中可以定义属性方法,变量,常量等。
4、调用不同:当接口被类实现时,在类中一定要实现接口中的抽象方法;而继承想调用哪个方法就调用哪个方法。
总结:
接口是:对功能的描述(方法/行为),接口传达的意思是:拥有某种功能,能干嘛,比如:Serializable代表可序列化的。
继承是:什么是一种什么,继承传达的意思是:is-a,比如:猫 是一个 动物,猫就是动物的子类。
Java中继承和实现的区别【单继承,多实现】相关推荐
- java中Runnable和Callable的区别
文章目录 运行机制 返回值的不同 Exception处理 java中Runnable和Callable的区别 在java的多线程开发中Runnable一直以来都是多线程的核心,而Callable是ja ...
- Java中重载和复写的区别
Java中重载和复写的区别 重载(overload) 复写(override) 区别和联系 重载(overload) 函数重载的最突出的例子就是类的构造函数,用户定义一个对象时可能会提供多种参数组合: ...
- java is instance of_详谈Java中instanceof和isInstance的区别
一次性搞定instanceof和isInstance,instanceof和isInstance长的非常像,用法也很类似,先看看这两个的用法: obj.instanceof(class) 也就是说这个 ...
- Java中notify和notifyAll的区别 - 何时以及如何使用
Java notify vs notifyAll notify和notifyAll方法之间有什么区别是棘手的Java问题之一! Condition 是个什么玩意? 提几个问题,从问题中去了解去学 ...
- Java中Set Map List 的区别
java中set map list的区别: 都是集合接口 简要说明 set --其中的值不允许重复,无序的数据结构 list --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构 ...
- Java implement意思_详解JAVA中implement和extends的区别
详解JAVA中implement和extends的区别 发布于 2020-4-14| 复制链接 摘记: 详解JAVA中implement和extends的区别extends是继承父类,只要那个类不是声 ...
- java中implement_详解JAVA中implement和extends的区别
详解JAVA中implement和extends的区别 extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,Java中不支持多重继承,但是可以用接口来实 ...
- JAVA中重写和实现的区别_Java中重载和重写的区别
Java中重载和重写的区别 1.1重载是什么 Overloading 方法重载是让类以统一的方式处理不同类型数据的一种手段,多个同名函数同时存在,具有不同的参数个数/类型 1.2为什么用重载 重载 ...
- java中的异常种类和区别以及处理机制和区别
java中的异常种类和区别以及处理机制和区别 按照异常需要处理的时机分为编译时异常(也叫强制性异常)也叫 CheckedException 和运行时异常(也叫非强制性异常)也叫 RuntimeExce ...
- java中ArrayList和LinkedList的区别
首先来看ArrayList和LinkedList的集成类和接口的区别.// lang java public class ArrayList<E> extends AbstractList ...
最新文章
- 【完结】12篇文章告诉你深度学习理论应该学到什么水平
- 职场社交是一个真实需求吗?
- VS2008中vss的设置
- css中怎么令dt 和 dd对齐
- html 替换反斜杠,在URL直接替换反斜杠反斜杠
- MongoDB 资源、库、工具、应用程序精选列表中文版
- oracle 生成 sql语句,Oracle使用SQL语句生成日历的实现方法
- 使用Android进行VR图像处理
- 循序渐进之Maven(4) - 第一个SpringMVC项目
- 对VLAN间路由实验的总结
- HTML5前端开发真的会被取代吗?
- 如何使用python进行批处理
- 2019电子科大计算机基础知识,电子科技大学820真题1999-2019终极版.pdf
- 5.Jenkins 权威指南 --- 安全
- java 之美_Java并发编程之美 PDF 下载
- python股票接口_python获取股票数据接口
- matlab加分号,matlab加分号
- 流水灯c语言程序 流程图,流水灯流程图(单片机流水灯流程图)
- 微服务项目部署-POS收银系统
- 弘辽科技:腾讯发力XR新业态有赞打通腾讯惠聚新增私域引流能力