您的位置:首页 > 移动开发 > IOS开发

iOS初学者

2015-07-20 22:05 387 查看
1.如果要判断两个字符串的大小,应该用==还是用isEqualToString符号
==运算符只能判断两个字符串的指针的值,只能判断两个对象是否相等,如果要判断是否相等,应该用isEqualToString;
compare则是比较目标在字母表中的位置,然后返回 NSOrderedDescending或者NSOrderSame
不区分大小写的比较,-(NSComparisonResult)compare:(NSString *) aString
options:(NSStringComareOptions)mask;
2.NSArray类的两个限制
他只能存储Objextive-C对象不能存储C语言基础的数据类型,如:int
float,enum,struct,
在NSArray不能在NSArry中存储nil
3,

属性在.h文件中和在.m中声明是有区别的。区别就是,在.h文件中声明的属性,外部类可以通过“类实例.属性”来调用,但在.m中声明的则不可以,获取和设置的方法,只能是通过setValue:forKey和valueForKey来实现。

成员变量,有三种权限,就是大家都知道的@private、@protected、@public ,写在.m文件中时,相当于是@private权限,子类无法访问,验证了一下,做权限修改也无效。而写在.h文件中,默认是@protected权限,子类可以访问,可以做权限修改。因为访问权限指针对.h文件。.h文件中成员变量,外部类对其的调用,跟C++一样,用->来调用。

以下摘自:http://blog.sina.com.cn/s/blog_68f368050101eop8.html
4.在 oc
编程过程中,一般会遇到将.h和.m文件分开的能力,一般是,声明写在.h文件中,在.m中只写实现方法
#import
<Foundation/Foundation.h>

@interface Student :
NSObject{

int age;

int no;

}
-(int)age;

-(void)setAge:(int)newAge;

-(void)setAge:(int)newAgeandNo:(int)No;

@end
#import
"Student.h"

@implementation Student
-(int)age{

return age;
}
-(void)setAge:(int)newAge{

age =newAge;

}
-(void)setAge:(int)newAgeandNo:(int)newNo
{

age =newAge;

no =newNo;
}

@end

5.在我们所新建的文件中,所新建的文件名必须与所继承的名字一致

6。存取方法那setter命名为setPath,getter命名为Path,为什么不是getPath,因为get在Cocoa中有特殊的含义,这个含义就是带有get的方法就意味着这个方法通过形参指针(传入函数的参数指针)来返回值。我们要遵守这个命名习惯或者说规则。

7.类的声明,@interface Student :NSObject
目的是让 Student具有创建对象的能力;

8.Person *person1=[Person new]; 共有三个作用

1>分配存储空间;2>初始化成员变量;3>返回空间地址

9.实现一个方法

首先是创建一个类,通过指针间接操作对象的成员变量(oc中只能通过指针变量来指向Person类型的对象)然后用声明的方法运行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: