简单谈谈对Object C的理解

  oc中的 .m文件(即#implementation  类#end)中,主要是对.h声明文件夹中声明的方法进行实现;

实现这些方法分为:-实例方法和+类方法;以-/+区分;

实例方法:   面向对象设置的声明的方法;  目的是实现对象的自身的属性和功能;

既然根据类来 实例化对象;(类是众多对象抽象出来的)

;那么在创建对象的时候;  1.站在类的角度去封装对象的功能: 即使一些功能,属性不是类所具有的:如果站在类的角度去思考,也是合理的;

                                            2.面向对象,创建对象,初始化对象,对象在类的成员变量区域中可含有变量,也可含有成员方法(组合类);

                                            3.成员方法的初始化;在重写initWith构造器的时候要注意给该组合类分配空间();因为对对象;对类的操作都是在

                                             堆空间完成的;在Class *c=[[Class  alloc ]  init ];的过程中;并不对这个组合类分配空间;而成员变量在@property ;@synthesize初始化属性的时候'

                                             存在栈中的自动变量;根据自动变量的特性,系统会在初始化变量的,在前面隐式的写一条赋值语句,即分配空间(看c和指针-静态存储和动态存储);

                                            

                                      .h---  实例化方法    -(void)print;无参数,无返回类型

                                                                       -(BOOL)isUpper;有返回类型,无参数;()括号内的BOOL型即返回类型

                                                                       -(void)isLower:(NSString *)a ;无返回类型,有参数;

                                                                       -(BOOL)isLower:(NSString *)a;有返回类型;有参数 //常用

                                                                       -(Person *)countAge:(Person *);

                                                                       主要就第四种常用的发表一下看法,有返回意味着在创建完对象;

                                                                        并对象完成初始化后,确认对象是安全的;调用该方法,给该传入需要的参数

                                     思考时,一定要弄清调用主体self 和参数(NSString *)a的关系,计算过程;那么就一定能够返回相应的值;在main函数内创建相应返回类型的局部变量接收一下                                        就ok了; 

                                     .m文件:                                  新手要思考三个方面:1.调用主体对不对?为什么?

                                                                                                            2.传入参数是什么?为什么?

                                                                                                            3.函数功能实现什么功能,为什么?

                                                                                                          再不然就是格式错了,声明方法名和实现方法名错了;

                                 OC起步:熟练掌握格式的基础上;要建立面向对象的概念;实例方法(即消息)是类发送给对象(调用主体的)的;

   在讲类方法:(类名 方法名 参数) 

                         可以和成员变量同名;

                         不能操作成员变量;

                         如果不使用成员变量的方法可以使用类方法;

                        简单讲:就对事物的本质操作;增删改查

                         类很重要的一点是实例化对象初始化如果是不完全初始化,那么这个对象实现的功能;比真正意义上的本类对象要差很多;

                    不完全初始化;是对类的概念的缩小;类似对外隐藏其共性,强调特性;

                    过度初始化;扩展类的功能和属性;更强调其综合性;希望用他去实现丰富的功能;

                     严格意义上这些初始化的对象已经与类有偏移了,但是有了这些类,才更加丰富类的实现形式;对解决更多问题提供了可能性;

         成员变量的权限在对外是@protected,对类方法是@private;如果要操作可以分条进行@public或者@package,@package介于@private和

@public之间;



码很多字,不码代码的人都很嫩;   实战为王;



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值