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

java向上造型的理解(JAVA面向对象③(向上造型,方法重写))

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

java向上造型的理解(JAVA面向对象③(向上造型,方法重写))

1.向上造型:当多种角色能干的事是一样的,可以将那多种角色造型到超类数组中,方便访问(实现代码复用)

超类型的引用指向派生类对象java规定能点出来什么看引用类型

超类型↓         派生类↓
Animal o3=new  Tiger();//向上造型        超类型的引用指向派生类对象
o3.只能点出Animal类中的                  能点出来什么,看引用类型----这是规定
Person p1=new  Teacher();
Person p2=new  Doctor();
p1/p2.只能点出Person类中的,不能点出派生类中的
SeaObject o5=new Battleship();
SeaObject o6=new Mine(200,300);
o5/o6.只能点出SeaObject类中的
  class Animal{}//动物类
  class Tiger extends Animal{}//老虎类继承动物类
  Animal o1=new Animal();//这句话怎么读?一个动物对象是动物类型的:动物是动物√
  Tiger o2=new Tiger();//一个老虎对象是老虎类型的:老虎是老虎√
  Animal o3=new Tiger();//一个老虎对象是动物类型的:老虎是动物√
  Tiger o4=new Animal();//动物是老虎× 编译错误

 

2.方法的重写:重新写

发生在父子类中,方法名相同,参数列表相同重写方法被调用时,看对象类型----Java规定重写遵循两同两小一大原则:(了解),两同:方法名相同,参数列表相同两小:派生类方法的返回值类型小于或等于超类方法的,派生类方法抛出的异常小于或等于超类方法的

    void和基本类型时,必须相等引用类型时,小于或等于 (超类大,派生小)
class Coo{
    void show(){}
    double test(){return 0.0;}
    Student say(){return null;}//Student类型 方法名say 因为需要返回值所以return null;
    Person sayHi(){return null;}
}
class Doo extends Coo{
    //int show(){return 5;}//编译错误,void时必须相等
    //int test(){return 0;}//编译错误,基本类型时必须相等
    //Person say(){return null;}//编译错误,引用类型时必须小于或等于
    //Student sayHi(){return null;}//正确
}

一大:派生类方法的访问权限大于或等于超类方法的

class 餐馆{
    void 做饭(){
        做中餐    
    }
}
//我做中餐-------------不需要重写
class Aoo extends 餐馆{
    
}
//我想改做西餐---------需要重写
class Aoo extends 餐馆{
        void 做饭(){做西餐}
}
//我想中餐加西餐(需要重写,先super中餐,再加入西餐)
class Aoo extends 餐馆{
        void 做饭(){super.做饭();+做西餐}
}
class Aoo{
    void show(){
    }
}
class Boo extends Aoo{
        void show(){
            super.show();//调用超类的show方法
    }
}
    重写与重载的区别:面试题

重写(override):发生在父子类中,方法名相同,参数列表相同重载(overload):发生在同一类中,方法名相同,参数列表不同

补充

    向上造型:---实现代码的复用

当多种角色能干的事是一样的,可以将那多种角色造型到超类数组中,方便访问(实现代码复用)

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

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

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