学习OC的自我总结笔记第一天

今天学习OC老师讲的知识点。

  1;      NSString类型,它是OC中的字符串类型。

       在OC中其他的类型与C语言一样 如;int , short ,long ,float, double, char等在OC中都可以使用。

       而OC中增加了一个NSString类型  它的语法:NSString *常量名(如:str)=@"字符串 ";

     在OC中字符串是@“字符串”;都是以@符合开头的。@“字符串”;是方便我们区分是OC字符串。OC字符串类型不能赋值为C语言字符串 如:NSString*str="字符串";这样是错的,必须加@符合。

    2:NSLog这个函数的作用和C语言中的printf一样是输出一句话,并且里面都要加格式化控制符。

         NSLog能输出printf里所有的控制符,并且增加了一个%@。

        NSLog与printf的区别:

                                   1,换行区别:NSLog自带换行,printf没有自带换行需要手动加\n

                                   2,内容区别:NSLog默认打印出项目名字和时间,printf则没有

                                   3,输出区别:NSLog能输出%@,printf不能输出 

    3:  类和对象:

                        类:就是某个一具有相同特征群体的总称,他无法具体指代一个事物。

                        对象:就是一个群体里具体的一个事物。

                         怎么得出类名:名词提取法,也就是说所有出现的名词都是类  列:小明在遛狗。这句话中有2个类,分别是 : 小明  狗。  

                         类有三要素:类名 特征  行为(方法)  如上面那句话:类名:小明

                                                                                                                 特征:性别 年龄 体貌特征 等等(具体有哪些自己想,具体就是用特征表示具体是哪个小明)

                                                                                                                   行为:遛狗           

                          声明语法: @interface  类名:NSObject{

                                                  属性列表

                                            }

                                       @end         注意:@end绝不能省略

                        行为在代码里又叫方法,它的语法是:

                                                                                 -(void)方法名;

                        注意在写方法时要加@implementation 类名  和  @end

                       语法:

                                   @implementation  类名

                                        方法的实现列表(如:-(void)方法名)

                                    @end

                          注意:1,类名没个单词首字母都要大写。

                                     2,属性以_开头,属性又叫成员变量

                                     3,@implementation 和@end一定不能少

                          另外注意:要在属性列表中加一个访问函数@public,不然在main函数中不能直接访问到属性列表中的成员变量。

                      总结语法:@interface  类名:NSObject{

                                            @public

                                                  属性列表

                                           }

                                         行为列表                                 如:-(void)方法名;                        这个位置作用是方法的声明

                                       @end

                                       @implementation  类名

                                        方法的实现列表                          如:-(void)方法名{

                                                                                                             方法的实现代码

                                                                                                        }

                                       @end

                                  注意:1,方法的声明中能在@interface 和@end之间,但不能写到大括号里

                                              2,方法的实现只能写在@implementation  类名  和@end 之间

      4:1,无参数无返回值的方法

                                             语法:  -(void) 方法名;

                                             实现:-(void)方法名{

                                                                       方法体

                                                           }

              2,有参数无返回值的方法

                                              语法:  -(void) 方法名:(参数类型)参数名;  

                                             实现:-(void)方法名:(参数类型)参数名{

                                                                       方法体

                                                        }

                     多个参数 

                                   语法:  -(void) 方法名1:(参数类型)参数名 (这要加个空格)方法名2:(参数类型)参数名 .......(这要加个空格)方法名n:(参数类型)参数名n;  

                                   实现:-(void)方法名1:(参数类型)参数名(这要加个空格)方法名2:(参数类型)参数名......(这要加个空格)方法名n:(参数类型)参数名n{

                                                                       方法体

                                                        }

                 注意:1,有空格
                             2,红色标记的可写可不写 ,不过为了增加方法的可读性一般都有写

              3,有返回值的方法

                                    语法:-( 返回值类型 )方法名:参数列表;

                                     实现:-(返回值类型)方法名:参数列表{

                                                            方法体;

                                                           return  需要返回的值;

                                              }

     5:

                         属性的赋值:

                                           在方法里给属性赋值和取值

                                                               语法:  

                                                                         取值:            属性名;

                                                                         赋值:          属性名=值;

                                           在方法外,主函数里给属性赋值

                                                                  语法:

                                                                         对象名->属性名=值;

                                     new 关键字的作用:1,开辟堆空间

                                                                      2,初始化对象

                                                                      3,返回堆空间的地址

                                        语法:类名*对象名=[类名   new]; 

                                         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值