2.OC类

作者: 圆梦人生 | 来源:发表于2015-05-22 11:16 被阅读118次
  1. 在OC类中创建一个类会生成两个文件:
    .h文件(用于声明成员变量和方法)
    .m文件(用于实现.h文件声明的方法)
  2. 在.h文件中类的定义关键字使用@interface,结尾必须加上@end表示结束,OC中所有关键字都要加上@,OC的超类是NSObject。
    例如:
    @interface Student @end
  3. 在.m文件中定义类使用@implementation,结尾加上@end表示结束
    例如:
    @implementation Student @end
  4. OC类中的继承使用 : (冒号)
  5. 在.h文件中成员变量都写在{} (花括号)中,成员变量以_开始
    例如:
    @interface Student{ int _age; int _name; } @end
  6. OC中get方法是去掉成员变量 _ (下划线)以后的内容,如成员变量是_age,对应的get方法是age
  7. OC中set方法如果有参数使用:表示,有几个参数使用几个冒号
    例如
    @implementation Student -(int) setAge:(int)age{}//set方法名是:setAge: -(int) setAge:(int)age andNo:(int)no{} //set 方法名是:setAge:andNo: @end
  8. OC中静态方法使用 + (加号)表示,如果是对象动态方法使用 - (减号)表示,方法返回值类型和参数返回值类型都要放到 () 中,如:(int)
  9. OC实例化对象和调用对象方法都要写在[]中
  10. OC中接收对象要使用指针
  11. OC中实例化对象先申请内存空间alloc,然后调用init实例化对象

案例
Student.h
#import<Foundation/Foundation.h> @interface Student : NSObject{ //成员变量都写在此处 int _age; int _no; } //声明方法 -(void)age;//get方法 -(void)no;//get方法 -(int)setAge:(int)age;//set方法 -(int)setNo:(int)no;//set方法 //两个参数的set方法 -(int)setAge:(int)age andNo(int)no;//set方法方法名是setAge:andNo: @end

Student.m
#import "Student.h" @implementation Student //实现方法 -(void)age{ return _age; } -(void)no{ return _no; } -(int)setAge:(int)age{ _age = age; } -(int)setNo:(no){ _no = no; } -(int)setAge:(int)age andNo(int)no{ _age = age; _no = no; } @end

main.m
#import <Foundation/Foundation.h> #import "Student.h" int main(int argc,const char* argv[]){ @autoreleasepool{ //代码暂时写在此处 //第一种声明对象 //Student *stu = [Student alloc]; //stu = [stu init]; //第二种方式,推荐使用这种方式 Student *stu = [[Student alloc]init]; //调用set方法赋值 [stu setAge:20]; //调用get获取值 int result = [stu age]; NSLog(@"age is %d",result); //调用两个参数的set方法 [stu setAge:20 andNo:30]; //接收值 int r1 = [stu age]; int r2 = [stu no]; NSLog(@"age is %d,no is %d",r1,r2); //对象使用完需要释放 [stu release];//release申请释放,实例化几次就要销毁几次 } }

相关文章

  • 2.OC类

    在OC类中创建一个类会生成两个文件:.h文件(用于声明成员变量和方法).m文件(用于实现.h文件声明的方法) 在....

  • Swift基础:一.Swift与OC区别:

    一.Swift与OC区别: 1.swift程序的入口是UIApplicationMain; 2.OC的类是...

  • c的基本数据类型

    1.char int float double 2.OC BOOL (YES NO) 3.OC 中的类,相当于汽车...

  • Swift和OC的异同

    1.OC的程序的入口是main;swift的程序入口是@UIApplicationMain 2.OC的类是有.h和...

  • Swift与OC的混编

    1.在OC工程中加入Swift文件,此时系统会自动创建一个桥接文件。 2.OC类中引用Swift类 切记:在OC的...

  • Swift和Object-C协议的区别

    1.OC中的协议只能用于类,swift中的协议不仅能用于类,还能用于结构体和枚举 2.OC中的协议可以设置可选实现...

  • Swift和Oc设置Button的文字颜色

    1.Swift实现 2.Oc实现

  • Swift oc 混编 - oc导入Swift协议

    (默认已经设置好桥接头文件)1.在Swift文件中写好协议2.oc类文件中导入:"项目名-swift.h"格式的文...

  • iOS一些干货网址

    1.GCD死锁 http://ios.jobbole.com/82622/ 2.OC编码风格 http://obj...

  • oc流程控制

    1.if (condition){}else{} 注意:if之后的条件必须加() 2.OC 中 if之后的con...

网友评论

    本文标题:2.OC类

    本文链接:https://www.haomeiwen.com/subject/rznlqttx.html