最近在调试Kotlin源码经常会遇到expect关键字,
expect关键字的意思是将一个声明标记为平台相关,并期待在平台模块中实现。
actual表示它在具体平台的实现。
例如,在查看createCoroutineUnintercepted源码的时候,你会看到它前面有一个expect关键字修饰
你是不是很好奇它的具体实现在哪里?
有些小伙伴可能会说:
借助Android Studio–>Tools菜单–>Kotlin–>Show Kotlin Bytecode–>Decompile查看kotlin对应的java源码, 不就行了吗?
空空如也。。。
其实最好的方法还是Debug断点调试,一步一步step into,最后会看到下图所示