新手提问:Objective-C中在@implementation上加一个@interface的有什么不同?
伊谢尔伦
伊谢尔伦 2017-04-21 11:16:01
0
2
611

新手提问,看别人的代码是这样写的:

@interface FirstViewController() 
-(void)timerOnActive;
-(void)getDataFromCD;
@end

@implementation FirstViewController
@synthesize userID;
@synthesize timer;

上面的代码是写在.m文件里的,我的问题是为什么不把

@interface FirstViewController() 
-(void)timerOnActive;
-(void)getDataFromCD;
@end

写在.h文件的@interface中? FirstViewController() 后面的那个括号是空的,需要填什么吗?这样写是为了补充吗?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

모든 응답(2)
Peter_Zhu

여기서 @interface FirstViewController()는 실제로 익명 카테고리와 마찬가지로 클래스 확장입니다. 이 클래스가 선언하는 메서드는 해당 클래스의 기본 @implementation 코드 블록에서 구현되어야 합니다. 또한 클래스 또는 프레임워크 클래스에서만 사용할 수 있도록 비공개로 선언된 추가 메서드도 있습니다. 위에서 언급한 개인용 헤더 파일이나 구현 파일의 카테고리(또는 둘 이상의 카테고리)를 사용하여 이러한 메소드를 선언할 수 있습니다. 이는 작동하지만 컴파일러는 선언된 모든 메서드가 구현되었는지 확인할 수 없습니다.

小葫芦

m 파일에 작성된 메소드는 외부 클래스에서 호출할 수 없습니다. 이 메소드는 프라이빗 메소드로 처리되어 이 클래스 내에서 호출됩니다. 외부 세계로부터 숨겨져 있습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿