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

Kotlin 面向对象 - init 块

Kotlin init 块

1、基本介绍
  • init 块,是初始化块,用于在主构造函数执行后执行一些额外的初始化逻辑
2、演示
  1. 基本使用
classPerson(valname:String){init{println("初始化中,姓名:$name")}}
valp=Person("张三")
# 输出结果 初始化中,姓名:张三
  1. 可以有多个 init 块,它们会按从上到下的顺序依次执行
classPerson(valname:String){init{println("第一个 init 块")}init{println("第二个 init 块,姓名:$name")}}
valp=Person("张三")
# 输出结果 第一个 init 块 第二个 init 块,姓名:张三
  1. init 块常用于验证构造函数参数
classUser(valemail:String,valage:Int){init{require(email.isNotEmpty()){"邮箱不能为空"}require(age>=18){"年龄必须大于等于 18"}}init{println("创建用户:$email, 年龄:$age")}}
valuser=User("jack@example.com",10)
# 输出结果 Exception in thread "main" java.lang.IllegalArgumentException: 年龄必须大于等于 18
  1. 与次构造函数的关系:主构造函数 → init 块 → 次构造函数执行
classStudent(valname:String){init{println("init 块执行")}constructor(name:String,grade:Int):this(name){println("次构造函数执行,年级:$grade")}}
vals=Student("Bob",3)
# 输出结果 init 块执行 次构造函数执行,年级:3
http://www.jsqmd.com/news/1328686/

相关文章:

  • RFIDit固定资产管理系统:Top 10 最牛逼的
  • 001-本地环境搭建
  • FloPy:Python地下水流建模的终极指南,从入门到精通
  • 3秒搞定网页图片格式转换:Save Image as Type 浏览器扩展深度解析
  • LoggerPlusPlus 2023更新日志:新功能与性能改进全解析
  • knockknock-genprofile使用指南:轻松创建安全访问配置文件
  • 摔倒检测和识别2:基于深度学习YOLOv12神经网络实现摔倒检测和识别(含训练代码和数据集)
  • Jetpack Compose - MutableStateFlow、LaunchedEffect 函数
  • 认知三论 · 认知总作用量方程深入研究报告
  • 语义分割实战——基于U_Net,PSPNet,DeepLab神经网络杂草分割系统2:含训练测试代码和数据集
  • 运算符基础知识打地基
  • 3分钟掌握PalEdit:幻兽编辑神器让你的PalWorld体验翻倍
  • 长春芬尼门店哪家专业:【芬尼】证照齐全 - 17728098551
  • 吞吐量最优化设计
  • 基于keras框架的MobileNetV2深度学习神经网络蔬菜分类识别系统源码
  • Smithbox入门指南:零基础掌握魂系列游戏修改神器
  • 如何轻松获取Sketchfab 3D模型资源:Firefox用户脚本实用指南
  • Xmind思维导图使用教程:从基础操作到高阶功能全解析
  • HarmonyOS应用实战-启示散页-76-清空数据别只删 Preferences:同步 AppStorage、缓存和恢复账本
  • 长春空气能采暖选购网点哪家专业:【芬尼】合规经营 - 18002239949
  • JazzIt常见问题解决:依赖安装、音乐播放失败等问题排查
  • 【AI法律文书写作实战指南】:20年律所技术总监亲授,3类高风险文书自动生成避坑清单
  • 终极指南:用yuzu模拟器在PC上畅玩Switch游戏
  • Supabase Kubernetes迁移指南:使用Migration资源管理数据库变更
  • 公司注销后小程序怎么办?2026年代办机构推荐与线上办理流程 - 跑政通
  • 为什么你学网安半年还是“只会复现”?解锁从复刻小白到独立挖洞的完整蜕变路线
  • 基于keras框架的LSTM深度学习神经网络手写字识别系统源码
  • Unity单例模式深度解析:从实现到架构的避坑指南
  • 大数据开发平台
  • 2026北京数字展厅设计公司哪家靠谱?数字展厅展馆选型指南