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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Lizzie 中级黑马   /  2014-10-11 22:35  /  1027 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Lizzie 于 2014-10-11 22:37 编辑

作业中犯的第一个错,刚开始的时候我总以为Student类中有成员变量Score * score
即Student类中包含Score成绩类,那么score就不用再定义set和get方法了,想法有点混乱,弄得有点继承的感觉了,然后就发现在使用到Score类时,不知道该怎么调用。。。
第二个错误是如下所示
  1. - (int)compareSpeedWithOther:(Car *)car
  2. {
  3.         return [Car compareSpeedBetweenCar1:self andCar2:car];
  4. }
复制代码

不知道之前是怎么想的,因为这里的compareSpeedBetweenCar1:car1 andCar2:car是类方法,而这里的self代表的是对象,一直觉得这样调用是不对的,后来才发现因为self处在类方法中所以我把它当做了类,但他实际上是对象,所以总感觉不对,就目前理解来说,凡是前面有* 的都是对象。上述return语句后的方法调用是掉用了类方法,所以前面的调用者是Car这个类,因为compareSpeedWithOther是对象方法,所以传进来的对象,即当前对象就是在类调用的方法中是其中一个参数,用self来表示的。

5 个回复

倒序浏览
赞,总结后思路就会变清晰,以后可能自己就不会犯了,多谢
回复 使用道具 举报
keep_flying 发表于 2014-10-12 11:16
赞,总结后思路就会变清晰,以后可能自己就不会犯了,多谢

每天总结一点,每天进步一点:)
回复 使用道具 举报
嗯 把错误总结好  很有用
回复 使用道具 举报
总结的不错啊
回复 使用道具 举报
Lxy 中级黑马 2014-10-14 23:25:18
地板
坚持是王道!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马