面向对象编程的3个特性编程
1 封装性对象
面向对象编程核心思想之一就是将数据和对数据的操做封装在一块儿。经过抽象,即从具体的实例中抽取共同的性质造成通常的概念,好比类的概念。继承
在实际生活中,咱们每时每刻都在与具体的实物打交道,例如咱们用的钢笔,骑的自行车,乘坐的公共汽车等。咱们常常见到的卡车、公共汽车、轿车等都会涉及到如下几个重要的物理量:可承载人数、运行速度、发动机的功率,耗油量、自重和轮子数目等。另外,还有几个重要的功能:加速、减速、刹车和转弯等。能够把这些功能称做是它们具备的方法,而物理量是它们的状态描述,仅仅用物理量或功能不能很好地描述它们。在现实生活中,用这些共有的属性和功能给出一个概念——机动车类。也就是说,人们常常谈到的机动车类就是从具体的实例中抽取共同的属性和功能造成的一个概念,那么一个具体的轿车就是机动车的一个实例,即对象。一个对象将本身的数据和对这些数据的操做合理有效地封装在一块儿,例如每辆轿车调用“减速”改变的都是本身的运行速度。面向对象编程
2 继承方法
继承体现了一中先进的编程模式。子类能够继承父类的属性和功能,即继承了父类所具备的数据和数据上的操做,同时又能够增添子类独有的数据和数据上的操做。好比“人类”天然继承了“哺乳类”的属性和功能,同时又增添了人类独有的属性和功能。数据
3 多态生活
多态是面向对象编程的又一个重要特征。有两种意义的多态,一种是操做名称的多态,即有多个操做具备相同的名字,可是这些操做所接受的消息类型必须不一样。例如,让一我的执行“求面积”操做时,他可能会问你求什么面积。所谓操做名称的多态性,是指能够向操做传递不一样消息,一边让对象根据相应的消息来产生必定的行为。另外一种多态是和继承有关的多态,是指同一个操做被不一样类型对象调用时产生不一样的行为。例如,狗和猫都具备哺乳类的功能——“喊叫”。可是,狗操做“喊叫”产生的声音是“汪汪....”,而猫操做“喊叫”产生的声音是“喵喵....”消息