当一个类有很多子类时,并且这些子类都重写了父类中的某个方法,
那么当把子类创建的对象的引用放到一个父类的对象中时,就得到了该对象的一个上转型对象,
那么这个上转型对象在调用这个方法时,就可能具有多中形态,因为不同的子类在重写父类的方法时可能产生不同的行为
专业点来讲,多态性就是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为
举了例子来说。为了形象我是用了汉字来做类名。希望你能看明白- class 动物
- {
- void cry()
- {
- }
- }
- class 狗 extends 动物
- {
- void cry()
- {
- System.out.println("狗的叫声:汪汪。。");
- }
- }
- class 猫 extends 动物
- {
- void cry()
- {
- System.out.println("猫的叫声:喵喵。。");
- }
- }
- class 多态
- {
- public static void main(String[] args)
- {
- 动物 animal=new 狗();//animal是狗的上转型
- animal.cry();
- 动物 animal=new 猫();//animal是猫的上转型
- animal.cry();
- }
- }
复制代码 |