Kotlin是一门让人认为很舒畅的说话,比拟Java来说,它加倍简洁,省去了琐琐碎碎的语法工作,同时了供给了类似Lambda,String template,Null Safe Operator等特点。闪开辟者用起来轻车熟路。
通俗的Java/Android法度榜样员平日只须要很短的时光就能快速应用Kotlin。综合Kotlin的诸多长处,加上Flipboard美国团队自2015年已惹人Kotlin,Flipboard中国团队也已经开端采取Kotlin来作为Android重要开辟说话。
固然Kotlin应用简单快捷,然而因为本身的深刻研究的习惯导致每接触到Kotlin的新功能,就马一向蹄的研究它的本质,这里总结一下关于若何研究Kotlin的一些办法来快速研究控制Kotlin。
到底研究什么
那么问题来了,kotlin这个object类型的类是若何实现的呢,Null安然操作符的实现道理,Lambda表达式是基于内部类照样真正的Lambda,这些问题就是我们要研究的对象。
比如Kotlin中供给了一种类型叫做Object,应用它我们可以快速实现单例模式的应用。代码特其余简单
- object AppSettings {
- }
- // ================AppSettings.class =================
- // class version 50.0 (50)
- // access flags 0x31
- public final class AppSettings {
- // access flags 0x11
- public final updateConfig()V
- L0
- LINENUMBER 7 L0
- RETURN
- L1
- LOCALVARIABLE this LAppSettings; L0 L1 0
- MAXSTACK = 0
- MAXLOCALS = 1
- // access flags 0x2
- private <init>()V
- L0
- LINENUMBER 4 L0
- ALOAD 0
- INVOKESPECIAL java/lang/Object.<init> ()V
- ALOAD 0
- CHECKCAST AppSettings
- PUTSTATIC AppSettings.INSTANCE : LAppSettings;
- RETURN
- L1
- LOCALVARIABLE this LAppSettings; L0 L1 0
- MAXSTACK = 1
- MAXLOCALS = 1
- // access flags 0x19
- public final static LAppSettings; INSTANCE
- // access flags 0x8
- static <clinit>()V
- L0
- LINENUMBER 4 L0
- //静态代码块中实例化,即类加载时便开端实例化
- NEW AppSettings
- INVOKESPECIAL AppSettings.<init> ()V
- RETURN
- MAXSTACK = 1
- MAXLOCALS = 0
- @Lkotlin/Metadata;(mv={1, 1, 5}, bv={1, 0, 1}, k=1, d1={"\u0000\u0012\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0008\u0002\n\u0002\u0010\u0002\n\u0000\u0008\u00c6\u0002\u0018\u00002\u00020\u0001B\u0007\u0008\u0002\u00a2\u0006\u0002\u0010\u0002J\u0006\u0010\u0003\u001a\u00020\u0004\u00a8\u0006\u0005"
推荐阅读
是以,它会让人想起残差前馈收集(residual feed-forward network),但在实际中,强迫这些收集向前传播误差并不克不及让它们在更高财揭捉?习到有效的层次表征。是以,它们不克不及基于更>>>详细阅读
本文标题:研究学习Kotlin的一些方法
地址:http://www.17bianji.com/lsqh/35131.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示