多态
什么是多态?
明星:吴彦祖,吴亦凡,王俊凯、薛之谦
宋小宝 王宝强 曾志伟
明星代表一个类 每一个人都代表一个对象
像这样同一个事物可以用不同的方式表示,就叫做多态;****
多态的体现
在Java中,使用类描述一类事物;
要模拟生活中的多态,就需要使用两个类;而且两个类都能指代同一个具体对象;
如生活中经常称狗为动物;
java中多态的体现:使用父类引用指向子类对象; (使用接口类型引用指向实现类对象)
多态的使用前提
之所以可以使用父类型引用指向子类对象,因为子类和父类之间有 “是”的关系,子类描述的事物实际上是父类的一个特例,所以可以使用父类型引用指向子类对象;
而没有继承关系的两个类就不能这样做:
所以java中使用多态的前提:多态中的两个类之间有继承关系****
多态好处
在生活中,一般都会使用多态的形式描述一个事物,如喝啤酒,不说喝啤酒,而是说喝酒,买裤子不说买裤子,而是说买衣服,是因为这样指代的范围更广,方便描述;
用软件的术语来说,就是提高扩展性,降低耦合性;
例如:模拟动物医院中,动物医生检查动物(猫、狗);
多态的好处:
使用多态可以提高程序的扩展性;
提高代码的复用性,降低程序的冗余性;
Calendar
Calendar类概念
Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象,如下: