- 1注意: 输出C语言的字符串使用%s 输出OC的字符串使用%@, %@就专门用于输出对象类型的
- 2 getter-setter方法
/*
setter方法:
作用: 设置成员变量的值
格式:
1. setter方法一定是对象方法
2. 一定没有返回值
3. 一定以set开头, 并且set后面跟上需要设置的成员变量的名称去掉下划线, 并且首字母大写
4. 一定有参数, 参数类型一定和需要设置的成员变量的类型一致, 并且参数名称就是成员变量的名称去掉下划线
*/
- (void)setSize:(int)size;
/*
getter方法:
作用: 获取成员变量的值
格式:
1. getter方法一定是对象方法
2.一定有返回值, 而且返回值一定和获取的成员变量的类型一致
3.方法名称就是获取的成员变量的名称去掉下划线
4. 一定没有参数
*/
- (int)size;
如果某一个属性只提供了getter方法, 没有提供setter方法, 我们称这个属性为只读属性
如果某一个属性只提供了setter方法, 没有提供getter方法, 我们称这个属性为只写属性
如果某一个属性同时提供了setter方法和getter方法, 我们称这个属性为可读可写的属性
如果某一个属性没有提供了getter和setter, 我们称这个属性为私有属性
.m
- (void)setSize:(int)size;
{
//成员变量以下划线开头的好处,就是可以区分局部变量和成员变量
// setter方法还有一个好处: 监听属性的变化
_size = size;
}
- (int)size
{
return _size;
}
- 3 点语法
- 如果给属性提供了getter和setter方法, 那么访问属性就又多了一种访问方式 , 点语法
- 点语法其实它的本质是调用了我们的setter和getter方法
- 点语法是一个编译器的特性, 会在程序翻译成二进制的时候将.语法自动转换为setter和getter方法
- 如果点语法在=号的左边, 那么编译器会自动转换为setter方法
- 如果点语法在=号的右边, 或者没有等号, 那么编译器就会自动转换为getter方法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。