目录
- 数据类
- 单例类
数据类
你或许听说过
MVC
、
MVP
、
MVVM
等架构模式,其中
M
即指数据类,它们用于将服务器或数据库中的数据映射到内存中。为编程逻辑提供数据模型的支持。
数据类一般需要重写以下方法:
-
equals()
:判断两个数据类是否相等。
-
hashCode()
:与
equals()
配套使用,对所收集的大量对象进行搜寻和定位。
-
toString()
:用于提供更便于阅读的输入日志,数据类默认打印的是一行内存地址。
以上方法在创建数据类时Kotlin会在自动帮我们创建,下面我们新建一个类,命名为
Mobilephone
:
接下来我们写入下列代码:
data class Mobilephone (val brand: String, val price:Double)
一行代码实现对
Mobilephone
数据类的定义,
data
关键字表明我们希望这个类是一个数据类,Kotlin会自动帮你完成很多工作,大大减少工作量。
当一个类中没有任何代码时,还可以将尾部的
{}
省略。
接下载我们实践一下这个数据类,加入以下代码:
fun main(){val P40 = Mobilephone(\"Huawei\", 3988.00)val Mate30 = Mobilephone(\"Huawei\", 3388.00)println(\"P40的价格是:\"+ P40.price)println(\"P40与Mate30价格一样吗?\" + (P40.price == Mate30.price ))}
我们定义了
P40
与
Mate30
两部手机的品牌和价格。随后我们打印出
P40
的价格,并与
Mate30
的价格比较。运行结果如下:
这样数据类已经开始运行啦。
单例类
单例模式是Kotlin中特有的,也是最常用、最基础的设计模式之一,可以避免创建很多重复对象。Kotlin创建单例类的方式极其简单:
只需要将原本地
class
替换为
object
关键字即可。代码如下:
object Singleton {fun singletonTest(){println(\"单例类已经定义好啦!\")}}
可以看到,Kotlin并不需要我们设定各种属性,实际上Kotlin帮我们创建了一个实例,并全局只允许这个实例存在一个。调用也很简单:
欢迎关注小试编程