@interface和@implementation

OC 类的声明和实现

  1. #import “Person.h” 相当于将 Person.h 中的内容复制一份到当前文件中. (两次#import ""不会重复导入, 但是两次#include ""会重复导入);
  2. 如果类只写了 @interface 就会报找不到实现文件.如果类只写了 @implementation 则无法识别为一个类,
  3. 类的声明 即 @interface Student : Person @end 可以在不同的文件中写多次, 且每个文件的方法声明和继承关系不同(但最终会以.m中导入的.h中的类的集成关系为准).但是需要在实现文件中实现方法. 但是不能在同一个文件中写入多次,也不能同时 #import “Student.h” + @interface Student : Person @end;
  4. 在 OC 中可以只写扩展和类别的@implementation 或 @interface ,这是不会报错的.
  5. 类别实现@implementation Person (category) @end 可以在不同的文件中写多次. 但是不能在同一个文件中写入多次; 如果多个文件中有重名的方法, 以编译顺序为准.
  6. 类别声明@interface Student (category) @end 和 扩展声明@interface Student () @end 可以写多次. 同一个类中也可以写多次.

泛型的声明和使用

泛型不可以被继承

  1. 声明

  2. 使用

// - 定义
@interface QIEParamsButton <ObjectType> : UIButton

/** 泛型 */
@property (nonatomic, strong)ObjectType params;

@end

// - 使用 定义
QIEParamsButton <NSString *> *shareToWeChat = [QIEParamsButton buttonWithType:UIButtonTypeCustom];
[shareToWeChat addTarget:self action:@selector(onShareClick:) forControlEvents:UIControlEventTouchUpInside];

// - 方法
-(void)onShareClick:(QIEParamsButton <NSString *> *)sender{
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值