Java:面向对象编程的三大特征详述

                           Java:面向对象编程的三大特征详述


      面向对象编程OOP(Object Oriented Programming)三大特征含义、体现、比喻及作用详述如下:

一、说明
      对象(Object):万物皆对象,对象是一种实体,包含一定的数据结构和状态。
      操作(Operation):一种作用于对象的行为,如访问和处理对象的状态。

二、三大特征
      1、封装(Encapsulation)
         (1)理解:定义对象和操作,只提供抽象的接口,并隐藏它们的具体实现。
         (2)Java中体现:spring mvc设计模型中的model(模型层),使用到javabean实体类将属性和方法封装起来,通过get/set方法调用。
         (3)个人比喻总结:笔记本电脑,我们能看到开机键、键盘、显示屏,却看不到他们的内部结构。这就是封装的体现,我们只需要会按开机键,敲键盘,看屏幕就行了,具体内部组装结构被隐藏起来了,因为也没有必要知道它内部结构是什么。


      2、继承(Inheritance)
         (1)理解:通过现有数据类型的性质,创建新的数据类型,而不影响原有数据类型。
         (2)Java中体现:在原有类的基础上,新建一个类。原有类称为父类,新建的类叫子类。子类可以重写父类的方法,也可以拓展自己的方法。
         (3)个人比喻总结:人和学生,人是父类,学生是子类,学生拥有着人的特征,同时还多了要上课、做作业等行为。


      3、多态(Polymorphism)
         (1)理解:多个不同对象对同一消息作出响应。  
         (2)Java中体现:
                A.接口实现(A implements B)(不同类的相同行为);
                B.子类继承父类重写父类方法(B extends A);
                C.同一个类中方法重载。
         (3)个人比喻总结:下课铃声响了,小明回家了,小李、小王......也回家了
          Ps:  多态实现的关键
            (1)父类引用指向子类对象,通俗的说就是父类的对象是由子类new出来的。(Person p  = new Student();)
            (2)父类引用只能调用父类中定义的方法和变量。
            (3)如果子类重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类的方法。(动态连接/动态调用)
            (4)变量不能被重写,重写只针对方法。

三、三大特征(作用)
      1、封装:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继 承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增 加新的方法使之更适合特殊的需要。
      2、继承:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
      3、多态: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。           

你可能感兴趣的:(编程语言(Java基础))