• 【Java】《Java程序设计基础教程》第五章学习


    5.1 抽象类

    Java语言中,父类的某些方法不包括任何逻辑,并且需要由子类重写。在这种情况下,用abstract关键字来修饰一个类时,这个类叫做抽象类,用abstract关键字来修饰一个方法时,这个方法叫做抽象方法。

    抽象方法只需声明,无需实现;抽象类不能被实例化,必须通过抽象类的子类来间接实现;抽象类不一定要包含抽象方法,若类中包含了抽象方法,则该类必须被定义为抽象类。

    抽象类可以包含非抽象方法。继承抽象类的类必须实现抽象类的抽象方法,否则,也必须定义成抽象类。即使抽象类中无抽象方法,也需要被继承后才能创建其子类的实例。

    5.2 接口

    接口是抽象类的一种,只包含常量和方法的定义,而没有变量和方法的实现,且其方法都是抽象方法。它的用处体现在下面几个方面:

    1.接口的定义

    (1). 通过接口实现不相关类的相同行为,而无需考虑这些类之间的关系

    (2). 通过接口指明多个类需要实现的方法

    (3). 通过接口了解对象的交互界面,而无须了解对象所对应的类

    在声明接口的成员时不被允许使用一些声明修饰语,比如不能在接口的成员声明中使用transient、volatile 或者 synchronized。同样,不能在声明接口成员的时候使用private和protected修饰语

    2.接口的实现

    在类的声明中用implements子句来表示一个类实现某个接口,在类体中可以使用接口中定义的常量,而且必须实现接口中定义的所有抽象方法。一个类可以实现多个接口,在implements子句中用逗号分开。

    3.接口与抽象类、类的区别

    (1). 接口中不能有非抽象类的方法,但抽象类中可以有

    (2). 一个类能实现多个接口,但只能有一个父类

    (3). 接口也可以继承,与类不同,接口可以继承多个接口

    (4). 无关的类也可以实现同一接口

    5.3 包

    包是一组相关的类和接口的集合。

    包不仅使得类的组织和管理更容易,也消除了不同组的类中潜在的类名冲突

  • 相关阅读:
    C博客01——分支,顺序结构
    博客园,我昔日的精神家园
    201720182 20179207 《网络攻防技术》第二周作业
    python 面试题(2)
    python 面试题(1)
    201720182 20179207 《网络攻防技术》第一周作业
    201720182 20179207 《网络攻防技术》第三周作业
    201720182 20179207 《网络攻防技术》黑客与工具
    python socket和简单tcp通信实现
    201720182 20179207 《网络攻防技术》python简明教程(110)
  • 原文地址:https://www.cnblogs.com/daijux/p/12016966.html
Copyright © 2020-2023  润新知