您的位置:首页 > 其它

OC基础语法学习2:面向对象中的特点

2015-05-29 19:11 489 查看
1、没有包名称,没有命名空间的概念

2、继承:继承默认是@public属性的,成员变量默认是@protected的;在父类里的一些函数或变量对子类是隐藏的,不可继承的。

3、OC中关键字都是@开头的,并且字符串也是以@开头的。

4、import引入头文件与include是不同的。import比较吊,import会自动检验头文件是否被包含过,自动防止重复包含。而include却要利用条件编译语句


#ifndef __Person_H__
#define __Person_H__
//头文件的定义

#endif


5、OC头文件类声明是以@interface开头@end结束。源文件的类的实现是以@implementation开头 @end结束。
例子:


//头文件 .h
@interface Person:NSObject
{
//成员变量
}
//+/-(返回类型) 方法名:(形参类型1)形参名1 方法名:(形参类型2)形参名2;
//+/- +:表示是类方法 -:表示对象方法
// 类方法只能由类来调用,对象不能调用,对象方法只能由对象调用,类不能调用

@end


// 源文件 .m
#import "Person.h"
@implementation Person
// 类方法 对象方法的实现
@end


6、OC中的方法的调用
[类/对象 方法]


//引入头文件
#import <Foundation/Foundation.h>
//声明类Person
@interface Person:NSObject
{
int _a;
}
// 对象方法set
-(void)setA:(int)a;
// 对象方法get
-(int)a;
@end
//类的实现
@implementation Person
//对象方法的实现setter
-(void)setA:(int)a
{
_a = a;
}
//对象方法的实现getter
-(int)a
{
return _a
}
@end

int main(int argc, const char * argv[]) {
@autoreleasepool {
// 定义一个对象OC中所有对象都是指针或引用类型的
Person * p = [[Person alloc]init];
//方法的调用
[p seta:2];
//NSLog()方法字符串以@开头
NSLog(@"a的值:%d",[p a]);

}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oc