美文网首页
Java类、抽象类、接口的异同

Java类、抽象类、接口的异同

作者: LaobingFung | 来源:发表于2019-02-17 15:46 被阅读0次

Java是面向对象的编程语言,类是对象的结构框架,类中定义了对象的成员变量和方法,此外还可以有类本身的静态变量和方法。
类可以被继承,每一次继承中,子类只能有一个直接的父类,但是可以有多层继承的关系。


抽象类

抽象类是一种特殊的类,抽象类不能用来创建对象,但抽象类可以有构造函数,抽象类需要被继承,可以使用其非抽象子类来创建对象。
若一个类中含有抽象方法,则该类必须声明为抽象类;反之,若一个类声明为抽象类,该类不一定有抽象方法,声明这种抽象类的目的在于使其不能用来创建对象。
构造方法,类方法(用 static 修饰的方法)不能声明为抽象方法。


接口

接口并不是类,接口中的方法只能是抽象方法,接口不能用来创建对象,接口可以被接口多继承,但最终需要被类实现,实现需要使用关键字implements。

  • 接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是 public abstract,其他修饰符都会报错)。
  • 接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量(并且只能是 public,用 private 修饰会报编译错误)。
  • 接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法。

总结

抽象类 接口
创建对象 不能 不能
构造函数 没有
成员变量 没有
成员方法 没有
类变量 只能用public static final修饰
类方法 没有
继承 单继承 单继承 多继承
实现 - - 一个类可实现多个接口

参考资料
Java基础 接口和抽象类
Java 抽象类
Java 接口

相关文章

  • Java编程——接口和抽象类

    在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。两者有着许多大异同。 一、抽象类 在了解抽象类之前...

  • Java类、抽象类、接口的异同

    类 Java是面向对象的编程语言,类是对象的结构框架,类中定义了对象的成员变量和方法,此外还可以有类本身的静态变量...

  • Java基础-抽象类和接口

    抽象类和接口也是 Java 面试中常考的,下面就来总结一下抽象类和接口的相关知识。 抽象类是类,Java 中类是单...

  • JAVA中的抽象类和接口

    父类-抽象类:Telephone.java 接口:IPayGame.java 继承了抽象类的子类:CellPhon...

  • Java中类,抽象类,接口的异同

    抽象类:当不同类中有两个同名方法,按已有的设计考虑,应该需要把这个方法放在父类,子类继承这个方法。但当不同类中同名...

  • Java—接口和抽象类的异同

    抽象类的定义 Java核心技术卷1: 1.为了提高程序的清晰度,包含一个或者多个抽象方法的类本身必须被声明为抽象的...

  • java接口与抽象类的异同

    https://blog.csdn.net/a624135_/article/details/122908092[...

  • 梳理一

    1、抽象类和接口的异同点? 相同点 都是不断向上抽取而来的。 不同点 抽象类需要被继承,而且只能单继承。接口需要被...

  • 接口类&抽象类

    java的接口类和抽象类的特点 java中抽象类的特点: 抽象类和抽象方法必须用关键字abstract修饰 2.如...

  • 高端基础面试题

    接口和抽象类的区别 比较点抽象类接口默认方法抽象类可以有默认的方法实现java 8之前,接口中不存在方法的实现实现...

网友评论

      本文标题:Java类、抽象类、接口的异同

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