蓝鸥iOS讲师推荐:在学习OC的过程当中会遇到面向对象的三大特征,那么它们分别是什么呢?又有怎样的差别呢?下面和我来了解一下吧!编程
1、封装安全
封装是对象和类概念的主要特性。它是隐藏内部实现,稳定外部接口,能够看做是“包装”。封装,也就是把客观事物封装成抽象的类,而且类能够把本身的数据和方法只让可信的类或者对象操做,对不可信的进行信息隐藏。ide
好处:使用更简单变量更安全能够隐藏内部实现细节开发速度加快模块化
OC中一个类能够继承另外一个类,被继承的类成为超类(superclass),继承的类是子类(childclass),能够直接拥有父类中全部非私有成员(相关实例变量)、方法。继承的实如今接口中使用符号“:”。函数
举个例子:@interfaceStudent:NSObject{}不过你们要注意的是:属性封装实例变量,方法封装具体实现代码,类封装属性和方法。子类可继承父类中的方法,还可重写父类方法。学习
2、多态spa
多态性(polymorphism)是容许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值以后,父对象就能够根据当前赋值给它的子对象的特性以不一样的方式运做。简单的说,就是一句话:容许将子类类型的指针赋值给父类类型的指针。不一样对象以本身的方式响应相同的消息的能力叫作多态。意思就是假设生物类(life)都用有一个相同的方法-eat;那人类属于生物,猪也属于生物,都继承了life后,实现各自的eat,可是调用是咱们只需调用各自的eat方法。也就是不一样的对象以本身的方式响应了相同的消息(响应了eat这个选择器)。指针
实现多态,有二种方式,覆盖,重载。对象
1)覆盖:是指子类从新定义父类的虚函数的作法。继承
2)重载:是指容许存在多个同名函数,而这些函数的参数表不一样(或许参数个数不一样,或许参数类型不一样,或许二者都不一样)。
3、继承
面向对象编程(OOP)语言的一个主要功能就是“继承”。继承是指这样一种能力:它可使用现有类的全部功能,并在无需从新编写原来的类的状况下对这些功能进行扩展。
经过继承建立的新类称为“子类”或“派生类”,被继承的类称为“基类”、“父类”或“超类”。继承的过程,就是从通常到特殊的过程。在考虑使用继承时,有一点须要注意,那就是两个类之间的关系应该是“属于”关系。例如,Employee是一我的,Manager也是一我的,所以这两个类均可以继承Person类。可是Leg类却不能继承Person类,由于腿并非一我的。
本章小结:封装可隐藏实现细节,使代码模块化;继承可扩展已存在的代码模块(类);它们最终须要的结果(代码重用)。多态是为了实现另外一个目的(接口重用)。多态的做用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
彷佛看起来有点复杂,不过内容其实也很简单了,但愿可以对有须要的同窗们有所帮助!