yhijijh 2022-11-25 07:49 采纳率: 40%
浏览 95
已结题

有关java的继承与实现,方法的重载

本人是大学生,想询问一下这些都是什么意思,有没有相应的实例,以及都用到了继承和实现,方法的重载的场景实例之类的(能有代码功能说明的注释)

  • 写回答

13条回答 默认 最新

  • 语言-逆行者 2022-11-25 09:06
    关注

    【1】接口:

    //定义接口Jumpping
    public interface Jumpping {
        //定义抽象方法跳高
        public abstract void jump();
    }
    

    【2】父类:

    
    //定义抽象的动物类
    public abstract class Animal {
        //定义成员变量
        private String name;
        private int age;
        //生成无参构造方法
        public Animal() {
        }
        //生成带参构造方法
        public Animal(String name, int age) {
            this.name = name;
            this.age = age;
        }
        //生成get和set方法
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
        //添加一个吃饭的抽象方法
        public abstract void eat();
    }
    

    【3】该子类继承父类并实现接口:

    
    /**这里是Cat继承了Animal父类并实现了Jumpping的接口*/
    public class Cat extends Animal implements Jumpping{
        //重写eat和jump方法,这里就是方法的重载
        @Override
        public void eat(){
            System.out.println("猫吃鱼");
        }
        @Override
        public void jump(){
            System.out.println("猫可以跳高了");
        }
        //生成无参和带参拿的构造方法
        public Cat() {
        }
        public Cat(String name, int age) {
            super(name, age);
        }
    }
    
    
    

    【4】测试类:

    //定义一个测试类
    public class AnimalDome {
        public static void main(String[] args) {
            //创建对象,调用方法
            Cat c1=new Cat();
            //调用方法,这两个方法一个是继承过来、一个是实现接口的
            c1.jump();
            c1.eat();
    
            System.out.println("----------------------");
            //无参构造赋值
            c1.setName("加菲猫");
            c1.setAge(5);
            System.out.println("品种:"+c1.getName()+","+"年龄:"+c1.getAge());
            //带参构造赋值
            c1=new Cat("小花猫",7);
            System.out.println("品种:"+c1.getName()+","+"年龄:"+c1.getAge());
            System.out.println("******************************************");
    
        }
    }
    }
    
    
    

    img

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

报告相同问题?

问题事件

  • 系统已结题 12月3日
  • 已采纳回答 11月25日
  • 赞助了问题酬金15元 11月25日
  • 请回答用户的提问 11月25日
  • 展开全部

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法