OC 简单对象、建立类方法小结

1.首先是输出函数,在学c语言时咱们都习惯写prinft 可是到了oc中 就要用NSLog 来输出语句了数组

 NSLog(@"Hello, World!");app

NSLog有一个注意点就是在双引号前面加上@,说到这不得不提一点,在oc中@出现的频率之高,简直使人发指,你会发如今刚建立.m文件的时候,主函数里面的第一行就是@autoreleasepool 这句代码是做用简单来讲就是:能够在某些状况下,大幅度下降程序的内存占用。当你仍是新手打着简单的代码,运行却发现出现问题时,不防能够看看是否是哪里缺了一个@,做为刚刚学完 c 转而来学oc的人,这个@加的真的很不适应。函数

2.类和对象,也是新的名词,形象的解释一下,类就比如 🐶这个群体,而你家的大黄啊,小白啊,就是🐶这个类里面的一个对象。.net

在建立类的方法 :快捷键(小菊花+n),选择OC X source 里的Cocoa class 新建一个类,类名首字母大写(习惯吧),  这时你的目录里就会出现两个文件 一个.h结尾一个.m结尾。那么一个对象应该有哪些内容呢? 正常来讲,每一个人都具备他的属性和方法(行为)。属性 就好比人的身高体重年龄学历等等。方法就是人要作的事情,就像是吃饭喝水睡觉之类的事。该如何建立对象的属性和方法呢?指针

我来演示一下 建立一个Person的类对象

 

@interface Person : NSObject内存

{  NSString *_name;字符串

    int weight;get

    int heigh;}class

在.h文件中 NSObject 后面加上两个花括号,里面就是对象具备的属性,这里注意一点,在oc里是有专门对应字符串的数据类型 也就是NSString 不用像在c语言里经过字符数组或者字符指针去接字符串那样来定义字符串了,当你定义完属性以后,接下来要声明对象方法

-(void)eat;

-(void) drink;

 这里跟c中的结构体类似,void 也能够被int double NSString*等替换

咱们已经声明了对象的属性和方法,那么咱们怎么样来实现它们呢?

这时进入到.m文件 把刚刚声明的对象方法复制到这里面来,分号换成花括号,跟结构体是相似的,在这里说明一点,不删除分号直接加花括号也是能够的,系统不会报错,可是规范一些仍是写成:

-(void)eat

{

NSLog(@"Apple");

}

-(void) drink

{

NSLog(@"Water");

}

里面的内容就是你要实现的行为方法了。声明实现以后 咱们就要调用它们了

在main.m文件中 ,先建立一个对象。

Person * LiHua =[ Person new];//这样你就建立了一个名为李华的对象

[LiHua eat];// 调用这个eat 的方法,也就是会输出 apple 这个字符串

若是想调用对象里面的属性该怎么办呢?

在main.m里添加头文件

首先建立一个Peter的对象,用->来调用对象的属性,但咱们看到提示上都有一个红色的横线,这是什么意思呢?

能够尝试一下,若是在此时调用对象里面的属性,实际上是调用不到的,这是由于咱们在定义Person的属性时,系统默认添加了一个@private的头文件,这个头文件表明私人,咱们是看不到的,只能在类文件的方法中调用,在其余类文件和主函数中是没法调用的,解决方案也很简单,只要在.h文件中,声明@public,告诉系统类的属性是公用的就能够了。

这时再调用类的属性

能够看到红线所有都消失了。咱们能够对对象的属性进行赋值。

是否是很简单呢?

相关文章
相关标签/搜索