• Java抽象类和接口


    抽象类
    抽象类的定义格式:

    抽象类的特征:
    1.抽象类不能被实例化,也就是不能用new关键字去产生对象。
    2.抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象的。
    3.构造方法,类方法(用 static 修饰的方法)不能声明为抽象方法。
    4.抽象类的子类必须给出抽象类中的抽象方法的具体实现,除非该子类也是抽象类。
    抽象方法定义格式:

    抽象方法特征:
    1.抽象方法没有方法体,不需要花括号。
    2.抽象方法必须存在于抽象类中
    3.子类继承父类时,必须重写父类所有的抽象方法
    接口
    接口(interface) 就是方法定义和常量值的集合,是一种特殊的抽象类如果抽象类的所有方法都是抽象的,就可以用接口来实现。接口在语法上有些类似于类,它定义了若干各抽象方法和常量,形成了一个属性的集合,该属性集合通常对应某一种功能,实现类似于多重继承的功能。
    接口的定义格式:

    实现接口的语法格式:

    注意:
    1.当类实现接口的时候,该类要实现接口中所有的抽象方法。否则,该类必须声明为抽象的类。
    2.Java中允许一个类实现多个接口,从而也解决了Java类单一继承问题。
    接口的特征
    1.在JDK1.8之前,接口中的方法都必须是抽象的,并且方法不能包会方法体。在调用抽象方法时,必须通过接口的实现类的对象才能调用实现方法。
    2.从JDK1.8开始,接口中的方法除了包含抽象方法外,还包含默认方法和静态方法,默认方法和静态方法都可以有方法体,并且静态方法可以直接通过“接口.方法名”来调用。
    3.当一个类实现接口时,需要实现接口中的所有抽象方法。如果不想实现接口中的抽象方法,则需要将该类声明为抽象类。
    4.一个类可以通过implements 关键字同时实现多个接口,被实现的多个接口之间要用英文逗号(,)隔开。
    5.一个类在继承一个类的同时还可以实现接口,此时,extends 关键字必須位于implements 关键字之前。具体示例如下:Class A extends B implements C //先继承类,再实现接口。
    使用接口的主要目的
    1.解决Java无法使用多继承的问题
    2.制定标准的(制定规范)
    3.可以协同开发(即便没有具体实现方法的内容,也可以暂时把方法调用过来),协同开发时可以提高开发效率(接口和实现类可以分开写)
    4.易拓展(可以使用多态,一个接口类型的引用可以指向多个实现类实列)
    欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位指点,在此表示感激不尽。文章持续更新中…

  • 相关阅读:
    微信小程序错误码参考大全
    关于vagrant一个虚拟机搭建多个项目配置(总结)
    Vagrant安装完lnmp后,配置linux和windows共享文件并配置虚拟主机访问项目
    vagrant的centos镜像,怎么用root用户登录?
    Vagrant系列(二)----Vagrant的配置文件Vagrantfile详解
    过滤数组中的空数组array_filter()
    getMessage(),getFile,getLine获取异常用法
    测试工程师的福利!各远程移动测试平台对比分析
    学习这篇总结后,你也能做出天天快报一样的推荐系统
    别被官方文档迷惑了!这篇文章帮你详解yarn公平调度
  • 原文地址:https://www.cnblogs.com/mu-xiaoxia/p/14323731.html
Copyright © 2020-2023  润新知