数据成员:实例变量,属性。
属性表达实例的状态,描述类型对外的结构,属性可以做很多控制。
在默认情况下,编译器会为属性定义propertyName自动合成getter访问器方法,setter访问q器方法,一个实例变量_propertyName,当然这些也都可以自行定义。
可以定义实例变量,而不定义属性。只有实例变量,没有类变量。
在类外一律使用属性来访问,类内大多也通过self使用属性访问,除了init,dealloc,自定义访问器方法外。主要是避免内存管理保护出问题。
数据成员:实例变量,属性。
属性表达实例的状态,描述类型对外的结构,属性可以做很多控制。
在默认情况下,编译器会为属性定义propertyName自动合成getter访问器方法,setter访问q器方法,一个实例变量_propertyName,当然这些也都可以自行定义。
可以定义实例变量,而不定义属性。只有实例变量,没有类变量。
在类外一律使用属性来访问,类内大多也通过self使用属性访问,除了init,dealloc,自定义访问器方法外。主要是避免内存管理保护出问题。