如何将计算 属性 的 'setter' 设置为私有?
how to set 'setter' of an computed property to private?
我知道如何将存储的 属性 的 'setter' 设置为私有(例如 public private(set) var name: String = "John"
),但我们如何设置计算的 属性 的 'setter' ] 私了?在本例中,变量“age
”的 'setter'。当我试图将关键字 private 放在 set(newAge){}
前面时,XCode 显示错误。那么是否可以将计算 属性 的 'setter' 设置为私有?
public class Person {
public private(set) var name: String = "John"
var age: Int{
get {
return 10
}
set(newAge){ // how to set this setter to private so to restrict modification
}
}
}
您可以按照存储的方式执行此操作 属性:
private(set) var age: Int{
get {
return 10
}
set(newAge) {
// setter code here
}
}
我知道如何将存储的 属性 的 'setter' 设置为私有(例如 public private(set) var name: String = "John"
),但我们如何设置计算的 属性 的 'setter' ] 私了?在本例中,变量“age
”的 'setter'。当我试图将关键字 private 放在 set(newAge){}
前面时,XCode 显示错误。那么是否可以将计算 属性 的 'setter' 设置为私有?
public class Person {
public private(set) var name: String = "John"
var age: Int{
get {
return 10
}
set(newAge){ // how to set this setter to private so to restrict modification
}
}
}
您可以按照存储的方式执行此操作 属性:
private(set) var age: Int{
get {
return 10
}
set(newAge) {
// setter code here
}
}