Kotlin基础 4.companion object(伴生对象),更新中
Posted 彬sir哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin基础 4.companion object(伴生对象),更新中相关的知识,希望对你有一定的参考价值。
第一步,写kotlin代码:
class MainActivity : AppCompatActivity()
companion object
const val REQUEST_CODE_TAKE_PHOTO = 101
const val REQUEST_CODE_PICK_PHOTO = 102
...
第二步,转成Java代码:
tools->Kotlin->show Kotlin Bytecode可以查看kotlin代码的字节码
然后点击字节码右上角的Decompile可以将字节码转为java代码,如图:
第三步,查看java代码:
public final class MainActivity extends AppCompatActivity
private List pictures;
private BaseQuickAdapter pictureAdapter;
private Uri currentPictureUri;
private File currentPictureFile;
private final Set pictureAddressSet;
public static final int REQUEST_CODE_TAKE_PHOTO = 101;
public static final int REQUEST_CODE_PICK_PHOTO = 102;
@NotNull
public static final MainActivity.Companion Companion = new MainActivity.Companion((DefaultConstructorMarker)null);
private HashMap _$_findViewCache;
protected void onCreate(@Nullable Bundle savedInstanceState)
super.onCreate(savedInstanceState);
this.setContentView(1300075);
this.initListener();
...
第四步,得出结论
1.companion object的作用
使用companion object会在原类中生成一个内部类:public static final class Companion,同时在原类中创建这个内部类的对象(这么看,伴生对象是不是就理解了)
以上是关于Kotlin基础 4.companion object(伴生对象),更新中的主要内容,如果未能解决你的问题,请参考以下文章
Kotlin 协程协程底层实现 ① ( Kotlin 协程分层架构 | 基础设施层 | 业务框架层 | 使用 Kotlin 协程基础设施层标准库 Api 实现协程 )
Kotlin 协程协程底层实现 ① ( Kotlin 协程分层架构 | 基础设施层 | 业务框架层 | 使用 Kotlin 协程基础设施层标准库 Api 实现协程 )