面向对象三大特性 -- 继承,封装,多态

继承:
1、继承是面向对象程序设计能够提供软件开发效率的重要原因之一;
2、继承是具有传递性的;
3、继承来的属性和方法时隐式的,也就是在本类里面是看不见的;
4、一个类只能有一个父类,也就是只能单继承;
5、一个接口可以有多个父类,也就是接口可以是多继承。

封装:
1、封装就是把属于同一类事物的共性(包括属性和行为)归到一个类中;
2、隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读写以及访问级别,将抽象得到的属性,行为相结合,形成一个有机的整体,组成一个类,其中属性和行为都是类的成员。

多态:
多态性是指允许不同子类型的对象对同一消息作出不同的响应,简单的说就是用同样的对象引用调用同样的方法但是做了不同的事情。
多态性分为编译时的多态性和运行时的多态性。方法重载(overload)实现的是编译时的多态性(也称为前绑定),而方法重写(override)实现的是运行时的多态性(也称为后绑定)。运行时的多态是面向对象最精髓的东西,要实现多态需要做两件事:1). 方法重写(子类继承父类并重写父类中已有的或抽象的方法);2). 对象造型(用父类型引用引用子类型对象,这样同样的引用调用同样的方法就会根据子类对象的不同而表现出不同的行为)。

Java实现多态有三个必要条件:继承、重写、向上转型。
继承:在多态中必须存在有继承关系的子类和父类。
重写:子类对父类中某些方法进行重新定义,在调用这些方法时就会调用子类的方法。
向上转型:在多态中需要将子类的引用赋给父类对象,只有这样该引用才能够具备技能调用父类的方法和子类的方法。

posted @ 2017-05-14 11:23  Bob.Xie  阅读(289)  评论(0编辑  收藏  举报