博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java多态的使用
阅读量:5222 次
发布时间:2019-06-14

本文共 1168 字,大约阅读时间需要 3 分钟。

   多态指的是同一个方法调用,由于对象不同可能会有不同的行为。

   多态的要点:

      1. 多态是方法的多态,不是属性的多态(多态与属性无关)。

      2. 多态的存在要有3个必要条件:继承,方法重写,父类引用指向子类对象。

      3. 父类引用指向子类对象后,用该父类引用调用子类重写的方法,此时多态就出现了。

  对象类型的转换:

  向上可以自动转换类型,由子类转换成父类!

  向下(由父类转换成子类)强制类型转换!以调用该对象特有的方法!

 

  下面这个例子简单示例说明了多态的使用和对象类型的转换。

demo:

/** * 测试多态 * @author 房廷飞 * */public class TextPolym {    public static void main(String[] args) {        Animal a=new Animal();        animalCry(a);        Dog b=new Dog();        animalCry(b);        Animal b1=new Dog();    //向上可以自动转换类型,由子类转换成父类!        animalCry(b1);        Dog b2=(Dog)b1;    //向下(由父类转换成子类)强制类型转换!以调用该对象特有的方法!        b2.seeDoor();    //调用该对象特有的方法        Animal c=new Cat();        animalCry(c);        }    static void animalCry(Animal a1) {        a1.shout();    }}class Animal{    public void shout() {        System.out.println("叫了一声!");            }}class Dog extends Animal{    public void shout() {        System.out.println("汪汪汪");    }    public void seeDoor() {        System.out.println("看门中!");    //该对象特有的方法!    }}class Cat extends Animal{    public void shout() {        System.out.println("喵喵喵");    }}

 

2019-03-13    22:52:36    房廷飞        期望明天更好的自己!

 

转载于:https://www.cnblogs.com/fangtingfei/p/10527308.html

你可能感兴趣的文章
最小度限制生成树模板
查看>>
树状数组总结
查看>>
3.shell编程-文件查找之find命令
查看>>
SourceTree windows免注册免登陆使用方法
查看>>
Android Studio 快捷键和常用技巧汇总
查看>>
POJ 1195 Mobile phones(二维树状数组)
查看>>
GridView 72般绝技 (http://blog.csdn.net/21aspnet/)
查看>>
win7创建共享给windows和linux机器
查看>>
java RE Validation常用
查看>>
How to change MAC address in windows 7
查看>>
log4net的各种Appender配置示例
查看>>
JointCode.Shuttle,一个简单高效的跨 AppDomain 通信的服务框架
查看>>
迅为iTOP-4412开发板-驱动-显卡支持HDMI_1080P分辨率
查看>>
SQL点点滴滴_DELETE小计
查看>>
Jquery选择器
查看>>
苹果开发者账号那些事儿(二)
查看>>
鲜贝7.3--mysql 下载小问题
查看>>
重载构造函数
查看>>
SimpleAdapter
查看>>
python中os的常用方法
查看>>