版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
面向对象三要素是:封装 继承 多态
封装
封装就是事物抽象为类,把对外接口暴露,将实现和内部数据隐藏。
打个比方吧; 我们使用的VB6.0 它的控件,里面的每个属性,属性后面具体数据 我们是看不到的, 把它封装好,组成的控件。这个就叫封装。
封装的意义:
封装的意义在于保护或者防止代码(数据)被我们无意中破坏。在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改。
1.保护数据成员,不让类以外的程序直接访问或修改,只能通过提供的公共接口访问==》数据封装
2.方法的细节对用户是隐藏的,只要接口不变,内容的修改不会影响到外部的调用者==》方法封装
3.当对象含有完整的属性和与之对应的方法时称为封装
4.从对象外边不能直接访问对象的属性,只能通过该属性对应的方法访问
5。对象搞得方法可以接受对象外边的消息
继承
面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
继承,我们敲过的 苹果和橘子的例子 就把继承清晰的解释了。
多态
多态存在的三个条件:1.要有继承2.要有重写3.父类引用指向子类引用
比如你是一个酒神,对酒情有独钟。某日回家发现桌上有几个杯子里面都装了白酒,从外面看我们是不可能知道这是些什么酒,只有喝了之后才能够猜出来是何种酒。你一喝,这是剑南春、再喝这是五粮液、再喝这是二锅头….在这里我们可以描述成如下:
酒 a = 剑南春
酒 b = 五粮液
酒 c = 二锅头
这里所表现的的就是多态。剑南春、五粮液、二锅头都是酒的子类,我们只是通过酒这一个父类就能够引用不同的子类,这就是多态