当前位置: 首页 > news >正文

Kotlin 继承和实现

文章目录

  • 前言
  • 继承(extend)
  • 实现(implement)
  • 继承与实现

前言

在 Kotlin 中,继承和实现都是在类名后使用冒号:,后边加上其他类或接口的名称来表示,二者之间写法没有太大区别(类需要加括号,而接口不用)。

class 类名: 其他类(), 接口

一个类只能继承一个类,但可以实现多个接口。

继承和实现都可以从一个类或接口中得到公开public或受保护protected的属性或方法的方式。

在继承、实现类中,可以通过super来访问继承类、实现接口中公开public或受保护protected的属性、方法和构造函数:

open class Water(val temperature: Double) {open fun mixWithCoke() = println("可乐兑水")
}class Ice: Water {// 父类构造// 当然,我们一般写在类上就行:// class Ice: Water(-10.0)constructor():super(-10.0)override fun mixWithCoke() {// 调用父类方法super.mixWithCoke()print("可乐加冰")}
}fun main() {val ice = Ice()// 可以继承父类的属性println(ice.temperature)// 我们只调用了可乐加冰// 而在冰兑可乐中调用了父类的水兑可乐ice.mixWithCoke()
}
-10.0
可乐兑水
可乐加冰

继承(extend)

继承通常是是对类class而言的。一个类继承自另一个类,被继承的类称为父类,而继承类称为子类

  • 在 Kotlin 中,所有类默认继承自Any,因此称Any为所有类的父类,所有类为Any的子类。
  • 接口interface不能继承类class

实现(implement)

实现通常是对接口interface而言的。一个类实现了某个接口,该类称为接口的实现类。

继承与实现

继承类被继承实现接口
普通类class×
普通类open class
抽象类abstract class
密封类sealed class
数据类data class×
枚举类enum class×
内联值类@JvmInline value class××
对象object×
接口实现接口被实现
普通接口interface
密封接口sealed interface
函数接口fun interface
http://www.lryc.cn/news/360817.html

相关文章:

  • MATLAB误差估计扩展卡尔博斯方法的目录大纲
  • NetMizer 日志管理系统前台RCE漏洞
  • 【spring】第二篇 bean实例化
  • MVC和MVVM
  • 【康耐视国产案例】智能AI相机机器视觉精准快速实现包裹标签的智能粘贴
  • 发现真正的诉求
  • Spring Boot配置MySQL数据库连接数
  • springboot595基于Java的大学生迎新系统-手把手调试搭建
  • 20 道大模型面试问题(含答案)
  • 【Java面试】四、MySQL篇(上)
  • 【Python】collections模块:高效处理数据的利器
  • Vue3实战笔记(51)—Vue 3封装带均线的k线图
  • 信息与未来2015真题笔记
  • 【成功解决】Access token invalid or no longer valid
  • 【Bug】修改计算机名称出现ip无法连接mysql数据库
  • 米尔MYC-Y6ULX-V2开发板测评记录
  • 装修全流程
  • 探索微软Edge
  • Java面试——专业技能
  • C#按钮样式设置XMAL
  • EmmyLua注释详解
  • Linux内核 -- 启用 Linux 内核调试信息
  • vs2019 无法打开QT的UI文件
  • Python | A + B问题|||
  • JRT连接希森美康出图
  • UVa11604 General Sultan
  • USB - ACK、NAK和STALL的含义
  • 查看 WSL2 (Windows Subsystem for Linux 2) IP 地址
  • 如何判断一个JavaScript对象是否为空?
  • 小白跟做江科大32单片机之LED闪烁