当前位置: 首页 > 知识库问答 >
问题:

使用简洁语法的属性专用设置程序[重复]

楚承天
2023-03-14
class kotlass(var propOne:String, var propTwo:String) {...}

所以这是Kotlin中声明属性的简洁方式。我想将setters(默认实现)更改为private。在不放弃简洁语法的情况下,这是可能的吗?

共有1个答案

韦志新
2023-03-14

可以使用val关键字代替varval代表value,表示该属性是不可变的,只生成getter(variablevariablevariablevariablevariable

另见官方参考:

与常规属性非常相似,主构造函数中声明的属性可以是可变的(var)或只读的(val)。

这并不是严格意义上的“将二传手改为私有”。它实际上导致属性是不可变的。如果您希望变量在内部是可变的,那么不,仅使用默认构造函数是无法做到这一点的。您必须使用Kotlin中描述的方法:Public get private set VAR。

 类似资料:
  • 我将SpringBoot2.6.2与docker等一起使用-我的应用程序通过如下所示: foo.bar肯定如预期的那样工作。但是我不确定这样说是否正确... …也在那里。这行吗? 加-我使用从Spring来管理和更改中的一些变量,这就像一个魅力。但是出于某种原因,它在那里放了一些反斜杠,导致: …这仍然正确吗?它有用吗? 感谢您的帮助或建议:-)

  • 我想开发一个API,使非程序员能够设置电子邮件属性,例如端口或主机。我发现我可以使用Spring Boot注释@ConfigurationProperties在类中加载属性。 我可以使用getPort检索属性,并使用setPort进行设置。 但是,使用此方法可以计算应用程序中的实际值。使用setPort或setHost时,属性文件不会更改。因此,当我重新启动应用程序时,更改会丢失。是否有办法实际更

  • 我如何定义一个对象来读取我的应用程序。mysql-databases by key: 我试着用这个对象: 每个请求获取:

  • Compile Sdk Version: 指定Android的编译版本. 对应build.gradle文件中的参数是: compileSdkVersion 23 Build Tools Version: 指定构建工具的版本. 对应build.gradle文件中的参数是: buildToolsVersion "23.0.2" SDK编译版本和构建工具的版本都是我们已经下载到本地的,如果本地没有就

  • 我有以下代码: 我想删除脚本,我尝试使用c: set与不同的范围,但它不起作用。是否可以使用JSTL标签设置请求属性? 我试过了,但没有成功: 而且还 之后有一个包括: 显然,在包含的JSP中,请求属性不可见。

  • 我试图在使用SC和Inno Setup创建一个服务时设置多个属性。到目前为止,我还不能让它100%工作,我已经让服务名称、显示名称、依赖项和描述正常工作。这只是我需要预设的恢复设置。(参见图片) 我已经尝试了多种写作方式,我已经尝试了失败和描述部分在同一行用单引号,双引号和小费引号都不起作用,我在新行上尝试了,因为下面也不起作用。不确定它们是否必须按特定顺序排列? 我环顾四周,没有发现任何关于设置