java接口default和static

java接口特性

概述

  • java中的接口,不经可以定义抽象方法,也可以定义非抽象方法
  • 抽象方法和以前一样,默认加上public abstract,不能有方法体‘
  • 非抽象方法,必须有方法体,声明上必须加上default或者static

default

  • 使用default关键字的原因:

    • jdk7中所有的方法都是抽象方法,某个类一旦实现了接口,就必须重写接口中的所有的抽象方法
    • java8在接口中添加了很多的功能,但又担心以前的老版本不能使用了,给新的功能增加了默认的实现,并且不强制重写这个方法就加上default,,这类方法就加上default来修饰
  • 使用规则:

    • 可以不重写就能够调用,也可以重写
    • 特殊情况1:实现类实现了两个接口,但是又两个相同的默认方法,会强制重写这个方法。
      - 特殊情况2:在情况一中,如果

static

  • 含义:

    • 在接口中可以定义静态方法
  • 使用:

    • 直接接口名称.静态方法名();
  • 注意事项:

    • static和abstract不能共存
    • abstract方法,在抽象类或者接口中,需要定义实现类对象才能调用的方法
    • static关键字,可以在不创建对象的前提下调用
    • 只能通过接口名称调用static方法,不能使用实现类调用,会有安全隐患。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值