美文网首页
抽象类和接口

抽象类和接口

作者: 爱星_b9f1 | 来源:发表于2018-11-27 19:17 被阅读0次

一、抽象类

在使用抽象类时需要注意几点:

1、抽象类不能被实例化,实例化的工作应该交由它的子类来完成,它只需要有一个引用即可。

     2、抽象方法必须由子类来进行重写。

     3、只要包含一个抽象方法的抽象类,该方法必须要定义成抽象类,不管是否还包含有其他方法。

     4、抽象类中可以包含具体的方法,当然也可以不包含抽象方法。

     5、子类中的抽象方法不能与父类的抽象方法同名。

     6、abstract不能与final并列修饰同一个类。

     7、abstract 不能与private、static、final或native并列修饰同一个方法。

摘抄chenssy 来源:CSDN 。

- image.png
image.png

接口

-界面(英语:Interface),在Java编程语言中是一个抽象型别(英语:Abstract_type)(Abstract Type),它被用来要求类别(Class)必须实作指定的方法,使不同类别的物件可以利用相同的界面进行沟通。界面通常以interface来宣告,它仅能包含方法签名(Method

  • 新建Fly接口,做法是新建一个class的时候,选择一下Kind类型为interface,如图:


    image.png
  • 1、个Interface的方所有法访问权限自动被声明为public。确切的说只能为public,当然你可以显示的声明为protected、private,但是编译会出错!

       2、接口中可以定义“成员变量”,或者说是不可变的常量,因为接口中的“成员变量”会自动变为为public static final。可以通过类命名直接访问:ImplementClass.name。
    
       3、接口中不存在实现的方法。
    
       4、实现接口的非抽象类必须要实现该接口的所有方法。抽象类可以不用实现。
    
       5、不能使用new操作符实例化一个接口,但可以声明一个接口变量,该变量必须引用(refer to)一个实现该接口的类的对象。可以使用 instanceof 检查一个对象是否实现了某个特定的接口。例如:if(anObject instanceof Comparable){}。
    
       6、在实现多接口的时候一定要避免方法名的重复。
    

摘抄chenssy 来源:CSDN 。
-为了更好的阐述接口和抽象类,下面将使用一个例子来说明。该例子引自:
https://www.jianshu.com/p/3323116ff68d
-1、 抽象类在java语言中所表示的是一种继承关系,一个子类只能存在一个父类,但是可以存在多个接口。

   2、 在抽象类中可以拥有自己的成员变量和非抽象类方法,但是接口中只能存在静态的不可变的成员数据(不过一般都不在接口中定义成员数据),而且它的所有方法都是抽象的。

  3、抽象类和接口所反映的设计理念是不同的,抽象类所代表的是“is-a”的关系,而接口所代表的是“like-a”的关系。

  抽象类和接口是java语言中两种不同的抽象概念,他们的存在对多态提供了非常好的支持,虽然他们之间存在很大的相似性。但是对于他们的选择往往反应了您对问题域的理解。只有对问题域的本质有良好的理解,才能做出正确、合理的设计

摘抄:李朝淋
来源:CSDN

相关文章

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

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

  • java的final关键字

    ——修饰类、接口和抽象类 final可以修饰方法,属性,类!但是不能修饰接口,抽象类;因为 接口和抽象类本身就是...

  • 接口和抽象类的区别

    接口和抽象类有什么区别 你选择使用接口和抽象类的依据是什么? 接口和抽象类的概念不一样。接口是对动作的抽象,抽象类...

  • 抽象类和接口的区别

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

  • 接口和抽象类

    接口和抽象类的区别? 接口(interface)和抽象类(abstract class)是支持抽象类定义的两种机制...

  • Android_开发_Day12_抽象类和接口

    Android_开发Day12抽象类和接口 目的: 知道什么是抽象类,什么是接口,学会抽象类的使用,与接口的使用。...

  • Java--接口和抽象类

    ·为什么需要接口?接口和抽象类的区别?  接口就是比“抽象类”还“抽象”的“抽象类”,可以更加规范的对子类进行约束...

  • Kotlin 零基础学习 接口和抽象类

    接口:接口就是暴露一种物体与另外一种物体沟通的方法 抽象类 接口 这么看接口和抽象类没什么区别,抽象类能干的接口也...

  • 接口,抽象类,工厂设计模式,代理模式

    一、接口的结构: 抽象方法 全局常量 最终写法: 其他内部结构内部类内部抽象类内部接口 二、接口和抽象类 抽象类可...

  • 接口跟抽象类的对比

    抽象类和接口的区别抽象类被子类继承 接口被类实现接口可以做方法生命 抽象类可以做方法生命 也可以做方法实现接口中定...

网友评论

      本文标题:抽象类和接口

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