黑马程序员-----读第19天和第20天的学习总结
关键体验:其实这两天个人觉得只要是初学者,都不知道那些概念是什么。只能通过自己不停的写代码才会对代码有熟悉的感觉,才会有对他产生,并且想写一些其他东西的感觉。这是真理,所以建议初学者先把一天教程一口气看完,一来只要自己摒着一口气,就没有想松懈的想法,自然而然你也有时间去反思和自己写代码了。
接下来分类讲一下我的学习总结:
- 对set和get 的理解
- 私有方法的理解
- 重写方法的理解
- 多态的检测
- 类和实力对象的关系(这边最搞脑子),
- 还有就是self.name 跟_name 理解
- 构造函数
- set和get其实已经被 @property 基本功能被慢慢替代,但是个人觉得重构set还是非常重要的,因为对实例变量的 限制还是很重要的,特别是遇到一个实例变量跟另一个实例变量发生关系是(举例:实例变量如果是丈夫,设置另一个实例变量为丈夫的配偶,那样,为了省去一个实例变量,可以通过set和get 的来搞定)
- 私有方法,老师讲了那么多,我觉得简单的来说一般放在implementation的里面,并在@interface没有的函数或者方法都是可以称为私有方法(我不知道是否正确,如果不正确,请尽情吐槽)
- 重用方法就是对已经现有的,公开的方法进行重新编写,一把我觉得用在Init特别多,一般我觉得重构方法都会继承原先的方法(Xcode封装好的代码)。但是重构方法在不同的类里面应用就是不同。都是有固定的写法的
- 多态一开始我会把他跟重用方法联系在一起,但是后来想想不对,因为多态纠结的是类和实例对象之间的关系,但是重用方法不是的。我觉得多态就是在老子类里面,小子可以跟老子要钱(钱是可以调用的,不是老子的私有方法)
- 类和实例对象,类相当于一个容器,实例对象就是对外开的一个接口,实例变量即来源于类,但是他又不是类,他又要可以调用类的属性,给我感觉类就相当于一个洗衣机,洗衣机有自己运作原理(类方法),也有滚筒(类的属性),实例变量就是使用这个洗衣机的人
- 还有就是self.name 跟_name 理解,他们在重写init的时候没有什么区别,但是在set中,只能用_name。我个人觉得self_name 有设置和取出两种方法,但是_name只有取出这种方法
- 重构方法里面就是我个人觉得instancetype用的比较多一点,用id这个万能指针不好,id可以用于多个方法不容易分辨
黑马程序员-----读第19天和第20天的学习总结
原文:http://www.cnblogs.com/leeaijiang/p/4804998.html