news 2026/4/3 6:05:47

kotlin 类委托

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
kotlin 类委托

写个demo测试下:

interface IWorker { fun work(): String } class Worker(val name: String): IWorker { // 工人 override fun work(): String { return "我起早贪黑工作。" } } class Contractor(val name: String, work: IWorker) : IWorker by work // Contractor是包工头,委托工人做事 fun main() { val work = Worker("杨白劳") // 工人杨白劳 val contractor = Contractor("黄世仁" ,work) // 包工头黄世仁 println("我是${contractor.name}, ${contractor.work()}") }

打印:

ok. 黄世仁工作,实际啥也没干,调用的是杨白劳。可见委托类在调用函数时啥也不做,直接调用的被委托对象的函数。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/26 23:36:30

《把脉行业与技术趋势》-65-当你的人生轨迹与民族复兴的长波、技术革命的中波、行业爆发的短波同频共振时,平凡的努力,也会被时代放大成非凡的成就——这,便是“着道”的现代诠释。

民族的生命的周期、国家宏观政策的生命周期、行业发展的生命周期、技术发展生命周期、企业发展的周期、产品的发展生命周期、个人的职业操作周期,傅里叶级数的可视化用图示的方式展现了小周期要顺应大周期,多周期共振带来的杠杆效应。一、核心思想&#…

作者头像 李华
网站建设 2026/3/27 18:57:22

Node.js代码统计神器

统计代码行数使用Node.js编写一个脚本,统计指定目录下所有文件的代码行数。const fs require(fs); const path require(path);function countLinesInFile(filePath) {const content fs.readFileSync(filePath, utf-8);return content.split(\n).length; }functio…

作者头像 李华
网站建设 2026/3/29 17:12:00

存储技术全解:从基础到前沿

系统存储机制深度剖析技术文章大纲存储基础概念存储介质的分类(HDD、SSD、NVMe、NVM)存储层次结构(寄存器、缓存、主存、外存)数据存取的基本原理(寻址、读写、延迟)文件系统与存储管理文件系统的核心组件&…

作者头像 李华
网站建设 2026/4/3 5:27:40

C++ 实现【精准可控】内存占用测试工具(指定内存大小,实打实占用物理内存,亲测可用)

前言在做程序性能验证、硬件资源测试、帧率影响实验(比如验证内存占用量对摄像头 / 图像处理 / 算法推理帧率的影响)时,我们经常需要人为、精准的占用指定大小的内存空间,以此模拟不同的内存负载环境。Windows 自带的内存查看工具…

作者头像 李华
网站建设 2026/3/29 10:48:01

‌大模型测试必须包含“多轮对话压力测试”

‌一、为何多轮对话压力测试是大模型测试的“生死线”‌在大模型从Demo走向生产的关键阶段,‌功能正确性已不再是唯一标准‌。多轮对话压力测试(Multi-Turn Dialogue Stress Testing, MT-DST)已成为评估模型在真实交互场景中‌稳定性、一致性…

作者头像 李华