首页 > 代码库 > 4 什么是类、对象、实例变量、方法
4 什么是类、对象、实例变量、方法
面向对象编程中,一般OC程序由三个文件组成:.h文件 .m文件 main.m文件。编译时,Xcode是编译所有.m上文件的。
.h文件:这是一个头文件,也可以说是接口部分。实例变量(类的属性)、对象方法、类方法的声明都在这个文件中。
- 如果定义一个“人”类, Person.h
@interface Person : NSObject
//人的属性(实例变量)
{
NSString *_name; //姓名
int _age; //年龄
}
//对象方法的声明(行为)
- (void)eat; //吃饭
- (void)setName:(NSString *)name; //姓名setter
- (NSString *)name; //姓名getter
- (void)setAge:(int)age; //年龄setter
- (int)age;
//类方法的声明
+ (void)run:(Person *)p1; //跑步
@end
.m文件:这是类的实现部分。是对接口部分进行代码实现的,要拷贝接口部分的头文件#import “Person.h”。
代码:
#import “Person.h”
#import <Foundation/Foundation.h>
@implementation Person
//对象方法的实现
//吃饭
- (void)eat
{
NSLog(@“吃饱了”);
// [Person run]; 可以调用类方法
}
//name的set方法和get方法
- (void)setName:(NSString *)name
{
_name = name;
}
- (NSString *)name
{
return _name;
}
//age的set方法和get方法
- (void)setAge:(int)age
{
_age = age;
}
- (int)age
{
return _age;
}
//类方法的实现
//跑步
+ (void)run:(Person *)p1
{
[p1 eat]; //可以使用对象方法,但要传对象参数
NSLog(@“我在跑步”);
}
@end
main.m 文件
int main ( )
{
//创建对象
Person *p = [Person new];
//给实例变量设值
[p setName:@“Mrzeng”];
[p setAge:26];
//读取实例变量
NSLog(@“我的名字叫:%@, 年龄是:%i“ , [p name], [p age]);
//类方法
[Person run:p];
//对象方法
[p eat];
return 0;
}
4 什么是类、对象、实例变量、方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。