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

Kotlin(八) 数据类、单例

目录

一:创建数据类

二:单例类


一:创建数据类

和Java的不同,kotlin的数据类比较简单,New→Kotlin File/Class,在弹出的对话框中输入“Book”,创建类型选择“Data”。如图:

然后编写如下代码:

只需要一行代码就可以实现了!神奇的地方就在于data这个关键字,当在一个类前面声明了data关键字时,就表明你希望这个类是一个数据类,Kotlin会根据主构造函数中的参数帮你将equals()hashCode()toString()等固定且无实际逻辑意义的方法自动生成,从而大大减少了开发的工作量。

另外,当一个类中没有任何代码时,还可以将尾部的大括号省略。

下面我们来测试一下这个数据类,在main()函数中编写如下代码:

运行结果:

二:单例类

单例模式,是最常用、最基础的设计模式之一,它可以用于避免创建重复的对象。比如我们希望某个类在全局最多只能拥有一个实例,这时就可以使用单例模式。

相对于Java的复杂单例创建模式,Kotlin就相对简单多了,它和数据类差不多,只需要把创建的类的 class 改成  object 即可,如图:

调用:

结果:

可以看到,在Kotlin中我们不需要私有化构造函数,也不需要提供getInstance()这样的静态方法,只需要把class关键字改成object关键字,一个单例类就创建完成了。而且调用也很方便,类似于Java的静态方法调用就可以。

虽然看上去像是静态方法的调用,但其实Kotlin在背后自动帮我们创建了一个Singleton类的实例,并且保证全局只会存在一个Singleton实例。

http://www.lryc.cn/news/208953.html

相关文章:

  • IAR For ARM 安装教程
  • 向量数据库Weaviate Cloud 和 Milvus Cloud:性能大比拼
  • 微信小程序控制元素显示隐藏
  • 轻量封装WebGPU渲染系统示例<2>-彩色立方体(源码)
  • 电脑技巧:Win10飞行模式相关知识介绍
  • 化身全能战士:ChatGPT助我横扫办公室【文末送书两本】
  • 直方图均衡化算法
  • 通过el-tree 懒加载树,创建国家地区四级树
  • Power BI 实现日历图,在一张图中展示天、周、月数据变化规律
  • C/C++计算表达式值 2020年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析
  • XTU-OJ 1258-矩阵
  • Django token 认证原理与实战
  • JVM虚拟机:Java对象的头信息有什么?
  • 场效应管器件
  • javascript之for循环介绍
  • 【机器学习可解释性】3.部分依赖图
  • 在CARLA中手动开车,添加双目相机stereo camera,激光雷达Lidar
  • 【VUE】ArcoDesign之自定义主题样式和命名空间
  • TVRNet网络PyTorch实现
  • opencv之坑(八)——putText中文乱码解决
  • nrf52832 开发板入手笔记:资料搜集
  • PHP如何批量修改二维数组中值
  • Python 算法高级篇:归并排序的优化与外部排序
  • LeetCode--1991.找到数组的中间位置
  • 物联网数据采集网关连接设备与云平台的关键桥梁
  • 专家级数据恢复:UFS Explorer Professional Recovery Crack
  • 2023/10/23 mysql学习
  • 软考系统架构师知识点集锦六:项目管理
  • MacOS系统Chrome开发者模式下载在线视频
  • uniapp v3+ts 使用 u-upload上传图片以及视频