美文网首页
抽象类·接口

抽象类·接口

作者: 尉昌达 | 来源:发表于2016-07-20 11:11 被阅读15次

什么是抽象类:

1.关键词abstract加在类声明的前面,把一个类变成了抽象类,抽象类不能被实例化。
2.抽象类通常有抽象方法,抽象方法没有方法体。
3.抽象方法必须在子类中实现。

什么是接口:

Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
1.接口中的属性默认为public,static,final.
2.可以有静态方法,有方法体。
3.当接口在被很多类实现的情况下,在接口中定义一个default方法只要自己实现就行,可以被子类覆写。

表格对比:

参数 抽象类 接口
默认的方法实现 它可以有默认的方法实现 接口完全是抽象的。它根本不存在方法的实现
实现 子类使用extends关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现 子类使用关键字implements来实现接口。它需要提供接口中所有声明的方法的实现
构造器 抽象类可以有构造器 接口不能有构造器
与正常java类的区别 除了不能实例化抽象类之外,它和普通java类没有任何区别 接口是完全不同的类型
访问修饰符 抽象方法可以有public、protected和default 接口方法默认修饰符是public。不可以使用其他修饰符
main方法 抽象方法可以有main方法,并且可以运行 接口没有main方法,不能运行它
多继承 抽象方法可以继承一个类和实现多个接口 接口只可以实现一个或多个其他接口
速度 它比接口速度快 略慢,因为需要时间寻找在类中实现的方法
添加新方法 如果你往抽象类中添加新的方法,你可以给他提供默认的实现。因此你不需要改变你现在的代码 如果往接口中添加方法,那么你必须改变实现该接口的类(default除外)

相关文章

  • 5.5-全栈Java笔记:接口的定义和使用

    接口interface 接口的作用 为什么需要接口?接口和抽象类的区别? 接口就是比“抽象类”还“抽象”的“抽象类...

  • 建造者模式

    建造者抽象类或接口 建造者抽象类或接口实现类 产品抽象类或接口 产品抽象类或接口实现类 使用

  • 代理(委托)模式

    主题抽象类或接口 主题抽象类或接口实际类 主题抽象类或接口代理类 使用

  • 访问者模式

    元素抽象类或接口 元素抽象类或接口实现类 访问者抽象类或接口 访问者抽象类或接口实现类 场景使用

  • Java 接口 抽象类 枚举

    接口 使用接口对行为进行抽象 接口: 抽象类 抽象类是用来捕捉子类的通用特性的,包括属性及行为。 抽象类: 抽象类...

  • 抽象类与接口

    抽象类 一般将父类定义为抽象类。语法如下 接口 接口简介 接口是抽象类的延伸,可以将它看作是纯粹的抽象类,接口中的...

  • 技术问 - 抽象类与接口有什么异同

    抽象类与接口的不同 抽象类与接口的相同

  • 夯实Java基础系列6:一文搞懂抽象类和接口,从基础到面试题,揭

    目录 抽象类介绍为什么要用抽象类一个抽象类小故事一个抽象类小游戏 接口介绍接口与类相似点:接口与类的区别:接口特性...

  • Android面试一问一答:接口与抽象类

    接口与抽象类有什么不同 接口可以多实现;抽象类只能单继承。 接口中只有常量;抽象类可以有自己的成员变量。 抽象类的...

  • 抽象类和接口的区别

    以下两篇文章介绍了接口和抽象类的概念接口概念抽象类概念 抽象类和接口的区别: 抽象类:需要使用abstract关键...

网友评论

      本文标题:抽象类·接口

      本文链接:https://www.haomeiwen.com/subject/dfsvjttx.html