class Human {
var name: String
var age: Int
var lover: Human?
init(_ name:String, age: Int) {
self.name = name
self.age = age
}
}
var kotliner = Human.init("Kotliner", age: 26)
var angel = Human.init("Angel", age: 27)
第一步,我教你先识别你的女神是不是单身, extension 就可以给 Human 添加一个是否单身的属性(计算性属性)
extension Human {
var isSingle: Bool {
return lover == nil
}
}
let angelIsSingle = angel.isSingle // true
protocol DeveloperJobProtocol {
var job:String { get }
var salary: Int { get }
var level: Int { get }
var childSex: Sex { get }
}
签合同很简单,看我给你演示一下
enum Sex {
case male, female
}
extension Human: DeveloperJobProtocol {
var job:String {
return "Andriod"
}
var salary: Int {
return level*2000 + 6000
}
var level: Int {
return 6
}
var childSex: Sex {
return .female
}
}
kotliner.salary // 18k
这是我们公司根据你的情况给你做的合同
Kotlin
18k,很好。知足了
//code
childSex 是什么鬼?
Swift
你做了程序员,那你不就注定生女儿了嘛。我都想象到未来你们生女儿一起生活的画面了!(拓展嵌套类型)
extension Human {
class Child: Human {
var sex:Sex = kotliner.childSex
weak var father: Human? = kotliner
weak var mother: Human? = kotliner.lover
}
var daughter: Child {
return Child.init("littleAngel", age: 0)
}
}
let yourChild = kotliner.daughter
let childFatherName = yourChild.father?.name // Kotliner
Swift -vs- Kotlin: 拓展篇 👊
脱单秘诀
Swift:
Kotlin 君,我看你最近加班多,都快没有时间谈恋爱了?你和你的女神近况怎么样?
Kotlin
Swift君,别闹。我们只是朋友关系;
Swift
傻子都看得出来你对你的女神有意思,看你单身20余载,恋爱经验匮乏,要不要我传授你撩妹秘诀?
Kotlin
懂我者Swift君也,快说说看;
Swift
以我们Swift为例,我们先定义一个人类,然后你就是
kotliner
和你女神angel
第一步,我教你先识别你的女神是不是单身, extension 就可以给 Human 添加一个是否单身的属性(计算性属性)
你看, 恭喜👏恭喜🎉,女神还单身,你有机会是吧!
Kotlin
这TMD也可以啊,看我也现学现卖一下;
Swift
学的不错,看样子Kotlin君天资聪慧,不就就可以脱单了; 看你的女神比较高冷,我再教你一个秘诀通过Extension,立即让Human学会一个陷入爱河的方法(func)
看,你的女神不是单身了,而且爱上你了;
当然在Swift里甚至可以让全世界不论男女都爱上你
Kotlin
这个好,我也试试看看
我还悟出了其他的撩妹技巧,你也看看你以前用过没有;
Swift
不错不错,可以借鉴;以前我父母他们那一辈有媒妁之约,男孩女孩一出生就婚定一生,前面一大堆的拓展学习太麻烦都可以省去,我直接在你女神出生那一刻就给你定娃娃亲,这事就简单了;(构造器)
当你的女神还是一个baby的时候,订个娃娃亲就好简单了
哈哈哈,一下子就成了。
Kotlin
xxxxxxxxxx
我去,原来这些我都这么快就学会了。女神我已经追求到手了,我们打算明天求婚。
Swift
等等等一下。。好不容易追到你女神,要好好爱护她,不过还好你是程序员,物质基础比较牢靠,但要有一份稳定的工作先保证;
Kotlin
是是是,我这边公司加班太多了,以后都没法陪老婆孩子,想换一家工作时间分配比较合理一点的公司,你给我推荐一下吧;
Swift
好,这份我们公司的程序员工作合同,签了它就可以过来上班了
签合同很简单,看我给你演示一下
这是我们公司根据你的情况给你做的合同
Kotlin
18k,很好。知足了
childSex 是什么鬼?
Swift
你做了程序员,那你不就注定生女儿了嘛。我都想象到未来你们生女儿一起生活的画面了!(拓展嵌套类型)
Kotlin
哇!!!当程序员居然有这个福利。我喜欢生女儿,生女儿好;可是为什么我女儿的父亲母亲要用
weak
Swift
你傻啊,你女儿终有一天会嫁出去的,不用
weak
的话就和你循环引用释放不了,你还想留你女儿一辈子?但是Human的lover我没有加weak,就是故意让你们相互引用,相守一身不离不弃;Kotlin
我。。。(感动ing)
Swift
好了好了,你先关注当下 婚礼的事情只欠东风,你这还没有结婚就有孩子了,明儿求婚还不是百分百搞定;
Kotlin
Swift君,多谢兄弟帮忙;婚礼的事情也希望请你多多指教,我没有经验;
Swift
其实都差不多了,就差一本结婚证,你们能够遵守婚姻协议后这事就成了
剩下的你们遵守婚姻协议就好了
好了,你们的婚姻都有政府见证,都有对方的誓言。恭喜你kotlin君🎉,你脱单了
Kotlin
Swift君 😭,我说不出话了。好兄弟无言表达我的谢意;
Swift
这没什么,我只是分享指导了我的撩妹技巧而已;
内心独白:
TMD,为啥我Swift君指导别人都能成功,自己单身狗当着都是偷偷摸摸的。不做iOS了,我要转Android开发;脱单的可能不是考秘籍,而是靠Google爸爸啊 😩