栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA多态与向上向下转型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA多态与向上向下转型

多态:父类接收子类

代码如下(示例):
class Person1{ //人

        public void eat(Apple a){  //这里写 Apple就被固定了,这个方法只能放Apple类

        }

        public void eat(Fruit f){   //放入父类Fruit 又可以接收苹果 又可以接收香蕉  节约代码

        }

}

class Fruit //水果  父类
{
    public void eat(){}
}
class Apple extends Fruit{  //苹果  继承父类
    public void eat(){
        System.out.println("苹果");
    }
    public void play(){
        System.out.println("吃");
    }
}
class Banana extends Fruit  //香蕉   继承父类
{
}

向上转型和向下转型
向上转型:
Fruit f = new Apple();   //把子类赋值给父类
f.eat();  //苹果   父类有eat方法通过 然后执行子类eat方法 

向下转型:
Apple a = (Apple)f;  //把父类强行转换成子类
a.eat();    //父类子类都有的方法
a.play(); //苹果  父类调用了子类特有方法
通过向下转型就可以使用子类特有方法

总结

多态:1.节省代码,形参接收子类,改成形参接收父类,可以接收多种子类

           2.转型:通过转型父类可以调用子类特有方法

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/933045.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号