IOS-day03_OC中的get和set

本文详细介绍了Objective-C中的get和set方法,解释了它们与C#和Java中的相似之处,并提供了具体的代码示例。文章还介绍了成员变量的命名规范及对象方法与类方法的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OC中的get和set实质和C#/java中的一样

只是表现形式不同而已

如下:

1 @interface Car : NSObject
2 {
3     int wheels;
4 }
5 
6 -(void) run;
7 -(void) setWheels:(int)newWheels;
8 -(int) wheels;
9 @end

实现:

 1 @implementation Car
 2 
 3 -(void)run{
 4     NSLog(@"%i个轮子的车跑起来了",wheels);
 5 }
 6 -(void) setWheels:(int) newWheels{
 7     if (newWheels <= 0) {
 8         newWheels = 4;
 9     }
10     wheels = newWheels;
11 }
12 -(int) wheels{
13     return wheels;
14 }
15 @end

命名规范:

set方法顾名思义是设置值的方法,在OC中一般以set开头,变量的首字母大写,目的主要起到一定的限制作用,如果设置的值不合理的话我们可以再方法中进行判断,避免直接访问其变量

get方法是取值的方法,在OC中一般和变量名一致(我比较倾向于get开头)

 

成员变量命名规范:

  一般以 _ 开头,这是规范,一般以 _ 开头的变量就是成员变量,所以上面代码中的 int wheels;应该改为 int _wheels;则没有以_开头的则是方法

方法:

以减号开头的方法是对象方法,如: -(void) run{...},这个方法只能用对象来调用

以加号开头的方法为类对象,如 +(void) run{...},这个方法可以通过类名直接调用,在C#中就是静态的方法,但是也有区别,OC中的类方法只能用类来调用,不能用对象来调用,而C#的静态方法是可以通过对象来调用的.

  类方法中不能访问实例变量,实例变量只能通过对象调用.

转载于:https://www.cnblogs.com/liyajie/p/4448768.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值