A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  对象 与 方法


1.     对象和方法


     1)对象,作为方法的参数
     2)对象,作为方法的返回值


2.     类的本质是:我们自定义的1个数据类型。


     因为对象在内存中的大小是由我们决定的,多写几个属性,对象就大一些,少写几个属性,对象占用的空间就小一些。

     什么是数据类型?
     是在内存中开辟空间的1个模板。


3.    类的对象作为方法的参数


     既然类是一个数据类型,那么类就可以作为方法的参数。


    例:
          -(void)test: (Dog*)dog;


4.     语法注意:

      1)当对象作为方法的参数的时候,参数该怎么写。
           参数的类型是类指针。
           -(void)test : (Dog *)dog;
      2)调用方法的时候,如果方法的参数是1个对象。那么给实参的时候,实参要求也必须是1个符合要求的对象。
           Person *p1 = [Person new];  
           Dog *p2 = [Dog new];  
           [p1 test: p2];
     3)当对象作为方法的参数传递的时候,是地址传递。
          所以,在方法内部通过形参去修改形参指向的对象的时候,会影响实参变量指向的对象的值。


5.    类的对象作为方法的返回值


     1)什么时候方法的返回值是一个对象呢?
          当方法执行完毕之后,如果有1个对象方法的内部不知道如何处理,并且这个对象是调用者翘首以盼的。那么这个时候,我们就应该将这个对象返回。


     2)例如:上帝造人!


1 个回复

倒序浏览
上帝造人。上帝杀人。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马