如果我删除类中的“var”关键字有什么区别?

你能告诉我代码A和代码B的区别是什么?

代码A

class Person(firstName: String) { } 

代码B

 class Person(val firstName: String) { } 

One Solution collect form web for “如果我删除类中的“var”关键字有什么区别?”

一个就像给你的构造函数设置一个参数来设置类成员的参数一样。

其次,您已经创建了一个成员variablesfirstName,并将传入的数据传递给它。

第二个代码等于:

 class Person(firstName: String) { val firstName:String? init{ this.firstName = firstName } } 

为了让你清楚,让我们试试这个代码

 fun main(args: Array) { var person = Person("Stackoverflow") println(person.firstName) } class Person(val firstName: String) { } 

OUTPUT Stackoverflow

okey让我们尝试第一个代码

 fun main(args: Array) { var person = Person("mohamed") println(person.firstName) } class Person( firstName: String) { } 

OUTPUT编译器错误

未解决的参考:名字

  • 如何注入非静态,按需NativeModules到React Native Android?
  • 科特林位移
  • Kotlin mutableMap.put返回空值
  • 如何在Kotlin中使用Dagger的2 @Named限定符
  • 什么?在Kotlin做什么?
  • Kotlin文件读取,使用块没有捕获所有的例外
  • 在Kotlin中使用@ClassRule
  • 习惯性的Kotlin正则expression式
  • 可空论的kotlin分裂
  • Intellij Idea kotlin不能自动导入一些运算符函数,例如+
  • kotlin原生未知主机目标
  • Kotlin language will be the best programming language for Android.