创建一个Person工程
main.m
#import <Foundation/Foundation.h> #import "Person.h" int main(int argc, const char * argv[]) { /*____________________创建person对象______________________*/ //在OC里面对象使用指针声明的 //alloc在内存中申请一块内存,用来存储此对象的信息 // Person *person = [Person alloc]; //调用init方法初始化一些默认的数据 // person = [person init]; //以上两步就创建好了一个对象 //等价与下面的这句 Person *person = [[Person alloc] init]; //new创建对象,不推荐 // Person *person1 = [Person new]; /*________________________OC方法的调用__________________________*/ // [对象/类 方法名]; //类方法的调用 [Person testClass]; //实例方法的调用 //不带参数的方法的调用 [person shopping]; //带一个参数的方法的调用 [person shopping:3000]; //带两个参数的方法的调用 [person shopping:400 withPlace:@"大物美"]; NSInteger a = [person shoppingPrice]; NSLog(@"a:%ld",a); return 0; }
Person.h
#import <Foundation/Foundation.h> //:后面的就是当前类的父类,NSObject是一切类的根类 @interface Person : NSObject { //在{}之间定义属性 //属性、全局变量、实例变量、成员变量 NSInteger age; //年龄 NSString *name; //名字 BOOL sex; //性别 //注意:在OC里面不能在定义属性的时候对属性赋值 // float height = 1.70; //身高 } /*--------------------设置类的方法---------------------*/ //C语言定义函数 //函数返回值类型 函数名 (形参列表); //int getSum(int a, int b); //OC中方法的定义 //方法的类型 (方法的返回值类型)方法名 参数 /*--------------------设置类的方法(实例方法)---------------------*/ //实例方法 //方法名: shopping - (void)shopping; //购物的方法,不带参数 //方法名: shopping:(注意:“:”是方法名的一部分) - (void)shopping:(float)price; //带一个参数的 //方法名: shopping: withPlace: - (void)shopping:(float)price withPlace:(NSString *)place; //带两个参数 //返回类型为整型 - (NSInteger)shoppingPrice; /*--------------------设置类的方法(累方法)---------------------*/ + (void)testClass; @end
Person.m
#import "Person.h" @implementation Person //不带参数的方法 - (void)shopping { //在实例方法类里面可以用档期类的属性 // NSLog(@"%@",name); NSLog(@"购物了"); } //带一个参数的方法 - (void)shopping:(float)price { NSLog(@"购物消费了%f元",price); } //带两个参数的方法 - (void)shopping:(float)price withPlace:(NSString *)place { NSLog(@"在%@购物消费了%f元",place,price); } - (NSInteger)shoppingPrice { NSInteger price = 100; return price; } //类方法 + (void)testClass { //在类方法中无法访问属性 // NSLog(@"%@",name); NSLog(@"这是一个类方法"); } @end
时间: 2024-11-10 09:30:18