kotlin get() 与 set()

class Person {

var name: String = "John Doe"

get() {

println("Getting the name: $field")

return field

}

set(value) {

println("Setting the name to: $value")

field = value

}

复制代码
var age: Int = 0
    get() {
        println("Getting the age: $field")
        return field
    }
    set(value) {
        if (value >= 0) {
            println("Setting the age to: $value")
            field = value
        } else {
            println("Age cannot be negative")
        }
    }

}

fun main() {

val person = Person()

复制代码
person.name = "Alice"
println(person.name)

person.age = 25
println(person.age)

person.age = -5

}

相关推荐
毕设源码-邱学长11 分钟前
【开题答辩全过程】以 基于Java的通信运营商流量管理系统设计与实现为例,包含答辩的问题和答案
java·开发语言
曲莫终15 分钟前
深度自定义jackson的JSON序列化日期时间类型
java
廋到被风吹走31 分钟前
DDD领域驱动设计深度解析:从理论到代码实践
java·大数据·linux
我命由我1234535 分钟前
Java 开发 - 如何让一个类拥有两个父类
java·服务器·开发语言·后端·java-ee·intellij-idea·intellij idea
范什么特西1 小时前
狂神--守护线程
java·linux·服务器
何中应1 小时前
CentOS7安装Maven
java·运维·后端·maven
大鹏说大话1 小时前
Windows 下将 Java 项目打包为 Docker 容器并部署的完整指南
java·windows·docker
Zachery Pole1 小时前
JAVA_03_运算符
java·开发语言·前端
张万森爱喝可乐1 小时前
Java 8 新特性探秘:开启现代Java开发之旅
java
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于java的网上书店管理系统为例,包含答辩的问题和答案
java·开发语言