Object-C之set方法,get方法

Main.m

#import <Foundation/Foundation.h>
#import "Person.h"

int main(int argc, const char * argv[])
{

    //创建person对象
    Person *person = [[Person alloc] init];

    //设置person对象的名字和年龄
    [person setName:@"Jack"];
    [person setAge:12];

    //打印个人信息
    [person showInfo];

    //取得对象的信息
    NSString *name = [person name];
    NSInteger age = [person age];
    NSLog(@"name:%@  age:%ld",name,age);

    return 0;
}

Person.h

#import <Foundation/Foundation.h>

@interface Person : NSObject {

    NSString *_name; //名字
    NSInteger _age;  //年龄

}

//打印个人信息
- (void)showInfo;

/*________________对象的设置器方法(set方法)____________________*/

//设置名字的方法
- (void)setName:(NSString *)name;
//设置年龄
- (void)setAge:(NSInteger)age;

/*________________对象的访问器方法(get方法)____________________*/
//取出名字的方法get
- (NSString *)name;
//取出年龄的方法
- (NSInteger)age;

@end

Person.m

//打印个人信息
- (void)showInfo {

    NSLog(@"这个人的个人信息:名字:%@  年龄:%ld",_name,_age);

}

//设置名字的方法
- (void)setName:(NSString *)name {
    _name = name;

}

//设置年龄
- (void)setAge:(NSInteger)age {

    _age = age;
}

//取出名字的方法get
- (NSString *)name {

    return _name;
}

//取出年龄的方法
- (NSInteger)age {

    return _age;

}
时间: 2024-08-01 22:22:35

Object-C之set方法,get方法的相关文章

Object类和String类equals方法有什么区别?

相信很多学习过Java的同学都知道,在比较两个String对象的内容是否相同时是使用equals方法的 如:String str1=new String("A"); String str2=new String("B"); String str3=new String("B"); boolean result1= str1.equals(str2); boolean result2= str2.equals(str3); System.out.p

java笔记--关于Object类与线程相关的方法

关于Object类中的线程方法 Object类是所有Java类的 父类,在该类中定义了三个与线程操作有关的方法,使得所有的Java类在创建之后就支持多线程 这三个方法是:notify(),notifyAll(),wait(),这几个方法都是用来控制线程的运行状态的. 方法列表如下: notify() : 唤醒在此对象监视器上等待的单个线程 notifyAll() : 唤醒在此对象监视器上等待的所有线程 wait() : 在其他线程时调用此对象的notify()或者notifyAll()方法前,导

BeanUtils.populate(Object bean,Map properties)的使用方法

BeanUtils位于org.apache.commons.beanutils.BeanUtils下面,其方法populate的作用解释如下: 完整方法: BeanUtils.populate( Object bean, Map properties ), 这个方法会遍历map<key, value>中的key,如果bean中有这个属性,就把这个key对应的value值赋给bean的属性.

javascript: object对象按属性排序的方法

javascript中在使用ajax和服务端交互时会遇到这样的场景,服务端返回json格式数据,前端展示时需要对数据进行某种排序,比如升序.降序. 可以利用 sort() 自定义排序规则来实现,例如返回的一段json数据,按照年龄升序排列. 1 var res = { 2 success: true, 3 result: [ 4 { 5 id: 1, 6 name: 'Jack', 7 age: 21 8 }, 9 { 10 id: 2, 11 name: 'Tom', 12 age: 23 1

部分类、静态类、Object类、ToString()方法、扩展方法的使用

部分类.静态类.Object类.ToString()方法.扩展方法的使用 一:部分类: 前言:partial关键字允许将类.结构.方法或者接口放在多个文件中.一般情况下,一个类全部驻留在单个文件中.但有时,多个开发人员需要访问同一类的时候,或者某种类型的代码生成器生成了一个类的某部分.所以把类放在多个文件中是有益的. 如果声明类时使用了下面的关键字.这些关键字就必须应用于同一个类中的所有的部分: public  private  protected  internal  abstract  se

unittest中报错:AttributeError: &#39;TestLogin&#39; object has no attribute &#39;driver&#39;解决方法

源代码如下: 更改后: 执行成功. unittest中报错:AttributeError: 'TestLogin' object has no attribute 'driver'解决方法 原文地址:https://www.cnblogs.com/Asiihu/p/10167964.html

JS json对象(Object)和字符串(String)互转方法

[JS json对象(Object)和字符串(String)互转方法] 参考:https://blog.csdn.net/wenqianla2550/article/details/78232706 string -> jsonObj JSON.parse(jsonString); jsonObj -> string JSON.stringify(jsArr); 记录一下 原文地址:https://www.cnblogs.com/d-i-p/p/11025164.html

并发编程(六)Object类中线程相关的方法详解

一.notify() 作用:唤醒一个正在等待该线程的锁的线程 PS : 唤醒的线程不会立即执行,它会与其他线程一起,争夺资源 /** * Object类的notify()和notifyAll()方法详解 */ public class MyNotify { // 在多线程间共享的对象上使用wait private String[] shareObj = {"true"}; public static void main(String[] args) { MyNotify test =

如何使用==操作符,Equals方法,ReferenceEquals方法,IEquatable接口比较2个对象

"世界上不会有两片完全相同的树叶",这句话适用于现实世界.而在软件世界中,这句话变成了"世界上必须有两片完全相同的树叶",否则,很多事情无以为继. 当比较2个对象是否相等时,通常情况下:==操作符用来比较值类型,比较的是值:实例方法Equals比较引用类型,比较的是对象的地址.静态方法Object.ReferenceEquals既可以比较引用类型也可以比较值类型,但比较的是对象的地址. 在实际项目中,当比较2个引用类型对象时,我们的需求变为:通过依次比较2个对象的所

通过反射 调用 类里面的 方法的方法

通过反射 调用 类里面的 方法的方法(注意 重载 ,可以 按F12转到 定义 查看 ): 错误方法: MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType); dynMethod.Invoke(this, new object[] { methodParams }); 正确 方法 : MethodInfo dynMethod = this.GetType().GetMethod("Draw_&qu