从“学习斯威夫特纲要”操场上,有一个例子协议:只读协议的特性在雨燕
protocol ExampleProtocol {
var simpleDescription: String { get }
func adjust()
}
有这个例子后很短的通道,上面写着:
注意:跟在simpleDescription属性后面的{get}表示它是只读的,这意味着可以查看该属性的值,但从未更改。
另外一个例子,给出一类符合本协议的:
class SimpleClass: ExampleProtocol {
var simpleDescription: String = "A very simple class."
var anotherProperty: Int = 69105
func adjust() {
simpleDescription += " Now 100% adjusted."
}
}
var a = SimpleClass()
a.adjust()
let aDescription = a.simpleDescription
然而这如何类符合协议?什么阻止我从变异simpleDescription
?我不明白什么?