kotlin-接口

前言

二货老婆在写论文没时间陪我玩耍,借此时间来写个博客讲讲 kotlin中的接口,

接口

kotlin中的接口和java8提供的相似,既包含抽象方法的声明也包括,也包含实现。
与抽象类不同的是接口无法保存状态,它可以有属性但是必须声明为抽象或者是提供访问器实现。

  • 接口的定义
    定义接口使用的是interface关键字
interface MyInterface{
 fun max:Int()
 fun min:Int()
}
  • 接口的实现
    一个类或者是对象可以是想一个或者是多个接口
class Child:MyInterface{
override  fun max(){
     // 方法体
    }
}
  • 接口中的属性
    你可以在接口中定义属性,但是属性要么是抽象的,要么是提供访问器实现,在接口中声明的属性不能有幕后字段,因此在接口中声明的访问器不能访问他们
interface MyInterface{
      val prop:Int  // 抽象的
     val myprop:String
     get() = "小黑"
}
  • 接口的继承
    一个接口是可以从其他的接口派生的,所以接口是可以继承的被继承的接口提供基本的方法和属性,继承的接口在此基础上进行覆盖
interface Named{
   val name:String
}

interface Person:Named{
   val lastname:String
   val firstname:String
   val name :String  get() = "$firstname $lastname"
}
  • 解决覆盖冲突
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值