• Java抽象类和接口


    1. Java抽象类

      在java中,带有abstract关键字的类被视为抽象类。它可以拥有抽象方法和非抽象方法(带有方法体)

      Java中的抽象

      抽象是仅仅向用户展示功能而隐藏实现细节的过程。另一种方式是,它只向用户展示基本信息并隐藏内部细节,例如发送短信,用户只需要编辑短信内容而无需知道短信是怎么被发送出去的

      抽象让你专注于对象能够做的事情,而不是它如何完成的

      实现抽象的方式

      在java中有两种方式实现抽象:

    1. 抽象类(0%-100%)
    2. 接口(100%)

      抽象类

    1. 抽象类拥有抽象方法和非抽象方法
    2. 需要被继承并且实现它的抽象方法,它不能被实例化
    3. 它可以有构造方法和静态方法
    4. 它可以有final方法但是子类不能重写这个方法

    2. java接口

      在java中,接口是类的蓝图,它拥有静态常量和抽象方法。java接口是一种实现抽象的机制,他们只能包含抽象方法,不能有方法体,接口被用来达到抽象和多继承的目的。

      java接口也代表了以一种is-a的关系。

      我们不能实例化一个接口,就像抽象类那样

      在java8中,我们可以使用default方法和static方法;在java9中,我们可以使用private方法

      为什么使用接口?

      使用接口主要有三个原因:

    1. 接口可以达到抽象的目的
    2. 通过接口,我们能支持多继承的功能
    3. 它可以用来实现松耦合

      编辑器的附加限制:

      The Java compiler adds public and abstract keywords before the interface method. Moreover, it adds public, static and final keywords before data members.

      java编辑器在接口的方法前面增加了public和abstract关键字,在数据成员前增加了static和final关键字

      类与接口的关系

    1. 类可以继承类
    2. 接口可以继承接口
    3. 类可以实现接口

      什么是maker或者tagged interface?

      一个没有成员的接口被视为maker或者tagged interface,例如:Serializable, Cloneable, Remote等,他们被用来提供一些有用的信息给JVM,以便JVM执行一些有用的操作

      嵌套接口

      在另一个接口或类中声明的接口称为嵌套接口。嵌套接口用于对相关接口进行分组,以便它们易于维护。嵌套接口必须由外部接口或类引用,它不能被直接访问

    3. 抽象类和接口的区别

    1. 最主要的区别:抽象类并非100%的抽象;接口是100%的抽象
    2. 抽象类不能实现多继承,接口可以实现多继承

    原文地址:https://www.javatpoint.com/abstract-class-in-java

  • 相关阅读:
    [HAOI2015]按位或
    【bzoj 4675】 点对游戏
    [WC2013]糖果公园
    [国家集训队]数颜色 / 维护队列
    【bzoj 3252】攻略
    [ZJOI2016]小星星
    hdu-1712 ACboy needs your help---分组背包
    hdu-2844&&POJ-1742 Coins---多重背包
    UVA-147 Dollars---完全背包+打表
    hdu-2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活---多重背包
  • 原文地址:https://www.cnblogs.com/boboshenqi/p/9530116.html
Copyright © 2020-2023  润新知