Kotlin中的这些关键字,你都认识吗?

Kotlin中的关键字可分为三类

1、硬关键字:这些关键字无论在什么时候都不能用作标识符

2、软关键字:这些关键字在他们不起作用的上下文中用作标识符

3、修饰符关键字:这些关键字可以在在代码中用作修饰符。

Kotlin硬关键字如下:

 as--用于做类型转换或者为import语句指定别名

 as?--类型安全的类型转换运算符

 break--中断循环

 class--声明类

 continue--忽略本次循环剩下的语句,重新开始下一次循环

 do--用于 do while循环

 else--在if分支中使用

 false--在Boolean类型中表示假的值

 for--用于for循环

 fun--声明函数

 if--在if分支中使用

 in--在for循环中使用;in还可作为双目运算符,检查一个值是否处于区间或集合内;in也可在when表达式中使用;in还可用于修饰泛型参数,表明该泛型参数支持逆变

 !in--可作为双目运算in的反义词;!in也可在when表达式中使用

 is--用于作类型检查(类似于java的intanceof)或在when表达式使用

 !is--用于作类型检查(is的反义词)或在when表达式使用

 null--代表空的直接变量

 object--用户声明对象表达式或定义命名对象

 package--用于当前文件指定包

 return--声明函数的返回

 super--用于引用父类实现的方法和属性,或者在子类构造器中调用父类构造器

 this--代表当前类的对象在构造器中调用当前类的其他类的构造器

 throw--用于抛出异常

 true--在Boolean类型中表示真的直接量

 try--开始异常出来

 typealias--用于定义类型别名

 val--声明只读属性或变量

 var--声明可变属性和变量

 when--用于when表达式

 while--用于while循环或do while循环

Kotlin软关键字如下:

 by--用于将接口或祖先类的实现代理给其他对象

 catch--在异常处理中用于捕捉异常

 constructor--用于声明构造器

 delegate--用于指定该注解修饰委托属性存储其他委托实例的字段

 dynamic--主要用于在Kotlin/JavaScript中引用一个动态类型

 field--用于指定该注解修饰属性的幕后字段

 file--用于指定该注解修饰该源文件本身

 finally--异常处理中的finally块

 get--用于声明属性的getter方法或者用于指定该注解修饰属性的getter方法

 import--用于导包

 init--用于声明初始化块

 param--用于指定该注解修饰构造器参数

 property--用于指定该注解修饰整个属性(这种目标的注解对Java不可见,因为Java并没有正真的属性)

 receiveris--用于指定该注解修饰扩展方法或扩展属性的接受者

 set--用于声明属性setter方法,或者用于指定该注解修饰属性的setter方法

 setparam--用于指定该注解修饰setter方法的参数

 where--用于为泛型参数增加限制

Kotlin修饰符关键字如下:

 abstract--用于修饰抽象类或抽象成员

 annotation--用于修饰一个注解类

 companion--用于声明一个伴生对象、

 const--用于声明编译时常量

 crossinline--用于禁止在传给内联函数的Lambda表达式中执行非局部返回

 data--用于声明数据类

 enum--用于声明枚举

 external--用于声明某个方法不由Kotlin方法(与Java的Native相似)

 final--用于禁止被重写

 infix--声明函数能以双目运算的格式执行

 inline--用于声明内联函数,Lambda表达式在内联函数中执行局部返回

 internal--用于表示被修饰的声明之能在当前模块内看见

 lateinit--用于修饰一个non-null属性,用于指定该属性可在构造器以外的地方完成初始化

 noinline--用于禁止内联函数中个别Lambda表达式被内联化。

 open--用于修饰类,表示该类可派生子类;或者用于修饰成员,表示该成员可以被重写。

 out--用于修饰泛型参数,表明该泛型参数支持协变。

 override--用于声明重写父类的成员

 private--private访问权限

 protected--protected访问权限

 public--public访问权限

 reified--用于修饰内联函数中的泛型形参,接下来在函数中就可像使用普通类型一样使用该类型参数。

 sealed--用于声明一个密封类

 suspend--用于标识一个函数后Lambda表达式可作为暂停

 tailrec--用于修饰一个函数可作为尾随递归函数的使用

 vararg--用于修饰形参,表明该参数是个数可变的形参。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容