A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© chenzhiyuan 中级黑马   /  2014-5-23 11:07  /  1950 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

java的继承和实现的区别?有哪些,怎么用,

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 赞一个!

查看全部评分

13 个回复

倒序浏览
java中单继承,多实现,继承是:一个类派生出的一个类。用着extends关键字可以继承一个类,实现:如果有多个接口,用一个类,用到关键字implements,可以实现多给接口,把接口所有的方法都实现
回复 使用道具 举报
java是单继承,多实现;只能继承一个父类,但可以实现多个接口,接口就实现了扩展功能
回复 使用道具 举报
是的没错,
回复 使用道具 举报
继承是类和类之间的关系。(单继承)
实现是类和接口的关系。(可以多实现)
补充:接口和接口也是继承的关系。(可以多继承)

想搞清楚的话,最简单的就是你要了解接口里面都是些什么,抽象类中又有写什么?普通类中又有些什么?

接口:也可以说是一种规则,要想用接口中的方法,就去实现它。
继承:很像父子关系,A类继承B类,就可以拿到B类中的方法和属性,就可以直接拿来用。

点评

很好!  发表于 2014-6-1 15:10
回复 使用道具 举报 1 0
是的,楼上们都说的很清楚,单继承,多实现。另外我说说他们的其他一些细节特点,

继承 关键字 extends
1.通过继承可以简化类的定义
2.Java只支持单继承,即一个子类只能有一个父类
3.但是可以有多层继承,即一个类可以继承莫一个类的子类
4.子类继承父类所有的成员变量和方法,但不继承父类的构造方法,在子类的构造方法中可以使用super(参数列表)调用父类的构造方法
5.如果子类的构造方法没有显式的调用父类的构造方法,也没有使用this关键字调用重载的其他构造方法,则在产生子类的实力对象时,系统默认调用父类无参数的构造方法

实现 implements
说到实现就要说到接口,对于接口,
1.我们可以用extends继承一个已有的接口
2.我们也可以定义一个类,用implements去实现一个接口中的所有方法
3.还可以定义一个抽象类,用implements实现一个接口中的部分方法

所以综上所述,一个类可以在继承一个父类的同时,实现一个或多个接口,从而达到"多继承"的目的,extends关键字必须位于implements关键字前

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 很给力!

查看全部评分

回复 使用道具 举报
Jero 中级黑马 2014-5-23 22:31:56
7#
继承说简单点 就是  只能有一个爸爸。
回复 使用道具 举报
本帖最后由 fenzheng 于 2014-5-23 23:11 编辑

在继承:如果多个类的某个部分的功能相同,那么可以抽象出一个类出来,把他们的相同部分都放到父类里,让他们都继承这个类。  实现:如果多个类处理的目标是一样的,但是处理的方法方式不同,那么就定义一个接口,也就是一个标准,让他们的实现这个接口,各自实现自己具体的处理方法来处理那个目标继承只可以单继承,而实现可以有多实现这就是区别,区别蛮大的。
回复 使用道具 举报
单继承,多实现
回复 使用道具 举报
单继承,多实现。
回复 使用道具 举报
继承针对类,实现针对接口。
单继承,多实现。
继承就像是一大堆不一样的绿色蔬菜,绿色就是他们的共同点,
实现就是有很多的西红柿,你有不一样的吃法,但最终目的都是吃。
父类(SuperClass)和 子类(SonClass)。
父类的非私有化属性和方法可以默认继承到子类。
(简单地说就是,你爸爸的小三属于你爸爸的私有,你不能继承)
Class Son extends Father{
}
而如果父类中的私有方法被子类调用的话,则编译报错。

父类的构造方法子类不可以继承,更不存在覆盖的问题。(非构造方法可以)
如果子类访问父类的构造方法,则在编译的时候提示访问不到该方法。
JAVA中不允许多继承,一个类有且只有一个父类(单继承)。
JAVA的数据结构为树型结构,而非网状。(JAVA通过接口和内部类实现多继承)
回复 使用道具 举报
视频里边说的好清楚啊!
回复 使用道具 举报
这个其实google 百度更好
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马