设计模式与Kotlin实践:对象创建与类型处理
1. 懒初始化与对象创建概述
在某些场景中,单例模式若未被调用,其初始化逻辑不会执行,这就是懒初始化,能有效节省资源。接下来,我们探讨不直接使用构造函数创建对象的方法。
2. 工厂方法模式
- 构造函数的局限性 :以国际象棋游戏为例,玩家需将游戏状态保存到文本文件并恢复。棋盘大小固定,只需记录每个棋子的位置和类型,采用代数记谱法,如皇后在C3记为“qc3”,兵在A8记为“pa8”。
- 代码实现
- 定义接口 :先确定所有棋子的共性,创建接口
ChessPiece。
- 定义接口 :先确定所有棋子的共性,创建接口
interface ChessPiece {
val file: Char
val rank: Char
}
- **实现数据类**:每个棋子用数据类实现该接口。
data class Pawn(
override val file: Char,
override val rank: Char
) : ChessPiece
data class Queen(
override val file: Char,
override val rank:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



