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

}

相关推荐
超级大只老咪1 分钟前
哈希表(算法)
java·算法·哈希算法
Ares_xb21 分钟前
推广一下自己刚撸的 IDEA 插件—Bean Copy 助手
java·ide·intellij-idea
郑重其事,鹏程万里25 分钟前
commons-digester3(XML解析框架)
xml·java
货拉拉技术1 小时前
网关 MCP 转换技术:从实现到平台落地
java·架构·mcp
艾菜籽1 小时前
SpringMVC练习:加法计算器与登录
java·spring boot·spring·mvc
浮游本尊1 小时前
Java学习第25天 - Spring Cloud Alibaba微服务生态
java
Cg136269159741 小时前
Super的详解
java
毕设源码-朱学姐2 小时前
【开题答辩全过程】以 便利店库存管理系统为例,包含答辩的问题和答案
java·eclipse
Nero182 小时前
代码随想录二刷第九天 | 232.用栈实现队列、225. 用队列实现栈、20. 有效的括号、1047. 删除字符串中的所有相邻重复项
java
泉城老铁2 小时前
tomcat 部署springboot,线程经常断开导致数据库连接池关闭,如何解决
java·spring boot·后端