三十岁的菜鸡 2022-03-29 21:03 采纳率: 100%
浏览 38
已结题

关于java中方法重写的一些疑问

父类定义的某个方法不能满足子类需求,所以子类对方法进行重写,这就导致父类的方法永远得不到执行,那么父类定义这个方法的意义在哪里呢?

  • 写回答

4条回答 默认 最新

  • 嘉祐-小萝卜算子 2022-03-29 21:18
    关注

    首先 父类得有这个方法,子类才能继承,才能重写
    其次 父类也可以定义父类对象,定义父类的对象时,就可以调用父类的这个方法
    而且子类不一定需要对父类方法进行重写,可以默认和父类一样
    它还可以在使用父类方法的同时添加新的需求

    
    
    public class TestApp {
     
        public static void main(String[] args) {
            //分别别创建父类和子类对象给Person类型的变量赋值,调用work方法进行测试
            Person p=new Person();
            Person p0=new man();
            Person p1=new sportsman();
            Person p2=new singer();
            p.work();
            System.out.println("==========================");
            p0.work();
            System.out.println("==========================");
            p1.work();
            System.out.println("==========================");
            p2.work();
            System.out.println("==========================");
    
        }
    }
    
    //编写一个Person类,其中有name属性和work()方法,
     class Person
    {
    
        //该方法输出“正在工作
        public void work(){
            System.out.println("父类正在工作");
        }
    }
    
    //继承Person类编写足球运动员和歌手,为子类编写work()方法,足球运动员的工作是“踢球”,歌手的工作是“唱歌”。
    //1.默认使用父类的方法
     class man extends Person{
        //默认使用不用将方法写出来
    }
    
    //2 保留父类方法的内容,同时添加新的内容
     class sportsman extends Person
    {
        public void work(){
            super.work();
            System.out.println("保留父类的子类正在踢球");
        }
    }
    
    //2 完全重写父类的方法
     class singer extends Person
    {
        public void work(){
            System.out.println("重写父类的子类正在唱歌");
        }
    }
    
    

    img

    可以结合 代码与结果学习一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 12月20日
  • 已采纳回答 12月12日
  • 创建了问题 3月29日

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程