android-studio - Kotlin 类中的构造函数参数和成员变量有什么区别?
问题描述
我发现构造函数参数和成员变量的行为方式几乎相同。
唯一的区别是:noOfSides
不能在内部更改class Square
,而noOfSideVar
可以在内部更改class Square
我写的代码:
fun main(args: Array<String>) {
var square1 = Square(4)
println("Parameter form: ${square1.noOfSides}")
println("Variable form: ${square1.noOfSideVar}")
square1.noOfSides = 10
square1.noOfSideVar = 50
println("New Parameter form: ${square1.noOfSides}")
println("New Variable form: ${square1.noOfSideVar}")
}
open class Polygon(var noOfSides: Int)
class Square(noOfSides: Int) : Polygon(noOfSides) {
var noOfSideVar = 7
fun area(): Int {
return noOfSides * noOfSides
}
}
上述代码的输出:
Parameter form: 4
Variable form: 7
New Parameter form: 10
New Variable form: 50
Process finished with exit code 0
如果我有任何误解,请清除它。我知道这是一个基本问题,但作为初学者我很困惑。
解决方案
推荐阅读
- javascript - 如果 Ajax 请求成功,你会在 Django 中返回什么?
- visual-studio - 在 Visual Studio 测试资源管理器窗口中看不到 boost 单元测试命名空间和类名
- javascript - 观察数据从父母到孩子的变化,反之亦然
- php - 如何确定与其大部分内容不同的数组值?
- android - 如何在 Android 应用程序中隐藏 API 密钥?
- reactjs - 如何使用功能组件向 ref 公开功能?
- c# - 如何使用引导确认模式删除选定的复选框行?SQL & MVC
- flutter - 如何在 MaterialApp 主题中设置 fontSize 的 MediaQuery textScaleFactor
- r - 运行线性回归时如何获得系数的协方差矩阵?
- node.js - 如何修复 knex 中由 union 构建的查询