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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 橸瑩膤漃寞林 中级黑马   /  2014-3-22 15:29  /  2320 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 橸瑩膤漃寞林 于 2014-3-22 19:14 编辑

子父类继承与接口有什么区别?都弄不清楚了。

8 个回复

倒序浏览
子父类实现继承可以继承到父类中的方法。而接口我们再实现的时候,要实现接口中的抽象的方法。

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
子父类中子类也可以覆盖父类中的方法
回复 使用道具 举报
继承只能单继,承继承的关键字extends,接口其实就是继承的延伸,关键字是implements,接口的实现可以是多个的,接口中的方法是抽象的,里面的成员变量都是静态的而且都被final修饰,值是不可变得,你可以认为是常量,里面的方法都是抽象的,就是有public abstract修饰的,当然默认可以不写的,但是继承后复写的时候必须加上。

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
子类继承父类,父类是子类的共性功能的抽取,比如Person中有性别,年龄等属性,Student可以继承Person的这些属性,然后添加自己特有的属性。
Java中只允许单继承,但是可以多层继承,比如B继承了A,C继承了B等等,而实现弥补了Java单继承的缺陷,因为Java中允许多实现。接口是一种特殊的抽象类。
希望这些对你有帮助

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
继承:1)提高了代码的复用性。2)让类与类之间产生了关系。另外:注意:千万不要为了获取其他类的功能,简化代码而继承。
必须是类与类之间有所属关系才可以继承。所属关系is a 同时继承还会出现重写。
接口:初期理解,可以认为是一个特殊的抽象类        当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。接口:是不可以创建对象的,因为有抽象方法。需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化。否则子类是一个抽象类。 接口可以被类多实现,也是对多继承不支持的转换形式。java支持多实现。多继承不支持是因为父类中的方法体重复,是子类在继承时发生问题;(一个类只能继承一个父类)(只有在接口之间可以多继承)所属关系是like a

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报
分别:继承、只能继承一个类,接口则可以实现多个接口,也是对多继承不支持的转换形式。java支持多实现
由于java中一个类不能继承多个父类,而这个类又需要多种属性,这个时候就可以用接口了。比

如说我写一个类:
  1. public class Test extends Jfranme
  2. {
  3. }
复制代码


但是你又想用这个类实现多线程技术,这个时候就不能让他再机型继承Thread类了 。但是你可

以这样:
  1. public class Test extends Jframe implerments Runnable
  2. {}
复制代码

这样你就即拥有了 Jframe的属性和方法了,而且也可以用这个类使用多线程技术

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
抽象类用abstract class定义, 接口用interface定义
                1、抽象类中可以有不抽象的方法, 接口中所有方法都是抽象的
                2、抽象类用extends继承, 接口使用implements实现
                3、抽象类中的方法没有默认修饰符, 接口中的方法默认是被public abstract修饰的
                4、一个类只能继承一个抽象类, 但是可以实现多个接口
次外 在定义一个类的时候, 如果需要定义抽象方法, 那么就需要使用抽象类或接口.如果该类中含有普通方法(不抽象的), 那么就只能使用抽象类.



评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
接口就是抽象的类,类只能单继承 ,当类中所有方法都是抽象的时候就是接口了。就可以多继承了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马