标签:
这周主要学习了面向对象的几大基本特征。
继承、封装、多态、抽象是面向对象编程的四大基本特征。
封装隐藏了类的内部实现机制,在不影响用户使用的前提下提供get和set方法,改变类的内部结构,从而保护了数据。
继承则是子类在创建时自动获取父类的全部信息,子类可以在其基础上扩展,继承充分提高了代码的复用性。
多态,就是同一种行为,不同的对象不同的体现。
多态又分为,静态多态和动态多态。
静态多态是指程序在编译时就能决定其调用的方法,也称编译时多态,说的更直接静态多态实现方式就是方法的重载。
多态多态是指程序在运行中系统多态确定方法所指的对象,也称为运行时多态,其实现方式就是靠重写父类中的同名方法,根据对象实例化后再确定。
多态在涉及到向上和向下转型的概念,向上转型是安全的必定会实现的。在向下转型时为了提高安全性,我们通常用instanceof先做判定。
总结一下,所谓多态就是用父类类型的引用指向子类对象,在java中所有普通方法都默认是多态绑定,声明final可以避免多态绑定的开销提升性能,让JVM不用去寻找而直接执行。
我们用abstract来声明一个抽象类,让子类强制去重写其抽象方法,同时一样可以给子类继承非抽象方法,不用实例化也不能实例化,让代码既有复用性又能通过父类实现多态,但是并不需要在父类中写方法主体。
所谓接口,其特点是所有方法均为抽象方法,与抽象类不同的是,接口可以支持多继承多实现,接口不含构造器,接口中不能包含实例成员变量,但可以有声明为static和final的变量。
标签:
原文地址:http://www.cnblogs.com/lxqdbky/p/5540656.html