Java中的多态

1、多态的定义:对象的多种形态(引用多态,方法多态)(使用多态时候一定要用到继承)

2、引用多态:父类的引用(对象)既可以指向本类的对象,也可以指向子类的对象。

为什么叫对象叫引用呢?其实对象名只是代表对象在这块内存的地址,通过对象名间接处理对象,所以对象名是一个引用。

3、方法多态:在创建本类对象时,调用的方法为本类方法

                        在创建子类对象时,调用的方法为子类重写的方法或者继承的方法

4、多态举例:

父类;Animal

package com.iooco;

public class Animal {
   public void eat(){
	   System.out.println("动物具有吃的能力");
   }
}

子类Dog和Cat

package com.iooco;

public class Dog extends Animal {
	public void eat(){
		   System.out.println("狗是吃肉的");
	}
	public void watchDoor() {
		System.out.println("狗是可以看们的");
	}
}
package com.iooco;

public class Cat extends Animal {

}

测试类: 

package com.iooco;

public class Inital {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Animal obj1=new Animal();
		Animal obj2=new Dog();//父类的引用可以指向子类
		Animal obj3=new Cat();
		//Dog dog=new Animal();子类的引用不可以指向父类
		obj1.eat();
		obj2.eat();
        obj3.eat();
        //obj2.watchDoor();
	}

}

从测试类可以看出来,obj1.eat()就是调用本类的方法,obj2.eat()就是重写父类的方法,obj3.eat()就是直接继承父类的方法,因为Cat中没有自己定义eat方法,所以直接继承父类的。

注意,要是子类独有的方法,比如watchDoor也不可以利用“利用父类的引用指向子类的”这种创建对象的放来来调用方法。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值