设为首页 加入收藏

TOP

Java 继承、抽象、接口(二)
2017-10-16 18:20:29 】 浏览:1184
Tags:Java 继承 抽象 接口
被子类重写,而 private 修饰的方法是私有的,不被子类所知,无法重写。
  • static:static 修饰的方法可以直接使用类名调用,不需要使用对象调用,如果 static 使用在抽象方法上就没有运行的意义了。
  • final:final 修饰的类不能有子类,而 abstract 修饰的类一定是一个父类。
  • 例如:

  • 三、接口

    1. 概述

    • 当抽象类中所有的方法都是抽象方法时,该类可以通过接口的形式表示,使用 interface 来表示,子类中使用 implements 来实现,接口可以认为是特殊的抽象类。
    • 格式:
      • interface 接口名{}
      • 子类名 implements 接口名 {}
    • 特点:
      1. 接口中常见定义:常量、抽象方法。
      2. 接口中成员都是使用 public 修饰的。
      3. 接口中成员都有固定的修饰符:
        • 常量:public static final
        • 方法:public abstract
        • 注:接口中的常量可以不写 public static final,方法可以不写 public abstract,编译时会自动添加这些修饰符,这是 Java 中接口固定的修饰符,为了方便阅读,一般都会写上。

    2. 特点

    1. 接口是程序功能的扩展。
    2. 接口是对外暴露的规则。
    3. 接口的出现降低了耦合性。
    4. 接口可以用来多实现,对于 Java 不支持多继承的缺陷而做的转换,Java 支持多实现。
    5. 类与接口之间是实现关系,类只能继承一个类,但同时可以实现多个接口。
    6. 接口与接口之间可以有继承关系,而且接口与接口之间支持多继承。

      注:
          1. 接口不可以创建对象,因为接口有抽象方法需要子类实现(implements),子类需要全部重写接口中的抽象方法后,子类才能实例化,否则该子类也会是抽象类。
          2. 实现多个接口时,接口中不允许有返回类型不同的同名抽象函数,如果有这样的情况时,子类实现将无法重写接口的抽象方法。

    3. 接口与抽象类

    • 相同点:都是不断向上抽取出来的抽象概念。
    • 区别:
        • 接口是实现,是 "like a" 关系;
        • 抽象类是继承,是 "is a" 关系。
        • 接口中的常量和方法都是 public 修饰的权限;
        • 抽象类中可以有私有变量或方法。
        • 接口体现的是实现关系,可以多实现,接口与接口之间可以有继承关系;
        • 抽象类体现的是继承关系,只能单继承。
        • 接口中所有方法都是抽象方法,接口中的成员都是有固定的修饰符;
        • 抽象类中可以定义非抽象方法,提供给子类直接使用。
    • 例如:

    首页 上一页 1 2 下一页 尾页 2/2/2
    】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
    上一篇干了这杯Java之ArrayList 下一篇java中需要注意的小细节

    最新文章

    热门文章

    Hot 文章

    Python

    C 语言

    C++基础

    大数据基础

    linux编程基础

    C/C++面试题目