Objective-C初步研究 - 接口文件(interface file)-阿里云开发者社区

开发者社区> 开发与运维> 正文

Objective-C初步研究 - 接口文件(interface file)

简介: 1. Exploring the Objective-C File Structure     建立一个Objective-C的类会新建两个文件, 一个接口文件(头文件)(interface file), 后缀为.

1. Exploring the Objective-C File Structure

    建立一个Objective-C的类会新建两个文件, 一个接口文件(头文件)(interface file), 后缀为.h,

    一个实现文件(implementation file), 后缀为.m

    (见下图)

 

   顾名思义, 接口文件定义所有方法签名, 实现文件具体实现代码逻辑

   看下面这段代码

 

 

#import语句用来导入某个头文件, 学过Java的朋友可以知道, 它类似Java中的import语句, 而Java中是导入某个包

 

Directive(指示语句)

Directives are commands that are added to your files that help Xcode and its
associated tools build your application.
 

(Directives你可以把它看成一种命令, 类似.NET中的@指示, 它让Xcode编译器知道你的代码如何组织)

 

@interface myClass : myParent <myProtocol> {
  NSString *myString;
  IBOutlet UILabel *myLabel;
}

 

Protocol(协议)

Sometimes you will come across features that require you to write methods
to support their use—such as providing a list of items to be displayed in a
table. The methods that you need to write are grouped together under a common
name—this is known as a “protocol.”

(你可以把它想像成C#或者Java中的接口, 协议中定义了哪些方法, 你就需要去实现这些方法)

 

 

+ (NSString)myClassMethod:(NSString)aString;
- (NSDate)myInstanceMethod:(NSString)aString anotherParameter:(NSURL)aURL;

 

The + denotes a class method(+号表示该方法是一个类方法)

- indicates an instance method(-号表示该方法是一个实例方法)

 

 

@property指示

 

@property (nonatomic, retain) UILabel *myLabel;

 

如果程序要访问实例变量(instance variable), 如果你没有加入该指示, 必须使用get, set方法

你可以把该指示想像成.NET中的属性

public string PropertyName { getset; }

 

原来使用get, set访问的代码

 

[myLabel setText:@”Hello World”];

theCurrentLabel=[myLabel getText];

 

 加了属性指示后, 我们可以像下面这样简单的访问

 

myLabel.text=@”Hello World”;
theCurrentLabel=myLabel.text;

 

 这样就方便了很多

 

最后, 接口结束必须以结束指示符

@end

 

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章