首页 > 编程语言 >java基础--接口

java基础--接口

时间:2024-12-16 22:58:03浏览次数:5  
标签:java name -- age 接口 int void public String

1.抽象类:里面有抽象方法时,就要声明该类为抽象类

public abstract class Animal {
    private String name;
    private int age;

    public Animal() {
    }

    public Animal(String name, int age) {
        this.name = name;
        this.age = age;
    }

    /**
     * 获取
     * @return name
     */
    public String getName() {
        return name;
    }

    /**
     * 设置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取
     * @return age
     */
    public int getAge() {
        return age;
    }

    /**
     * 设置
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }

    public String toString() {
        return "Animal{name = " + name + ", age = " + age + "}";
    }





    //抽象类,只能写在抽象方法中
    public abstract void eat();
}



2.接口类:行为方法

public interface Swim {
    public void swim();
}

3.其他类
继承,并且实现接口的函数
接口中的方法要实现就都得实现

public class Frog extends Animal implements Swim{
    public Frog() {
    }

    public Frog(String name, int age) {
        super(name, age);
    }
    @Override
    public void eat(){
        System.out.println("青蛙吃虫子");
    }
    @Override
    public void swim(){
        System.out.println("蛙泳");
    }



}
   //可以继承父类也可以实现接口
   //填写构造方法

//重写吃和游泳


兔子没有游泳这个行为,所以不用实现接口

public class Rabbit extends Animal {

    //要加上继承的关键字,接口要加上interface关键字


    public Rabbit() {
    }

    public Rabbit(String name, int age) {
        super(name, age);
    }
    @Override
    public void eat() {
        System.out.println("Rabbit eat");
    }
}

    //添加构造方法,把父类的name和age也加过来



    //原来这就是重写的用法,用在抽象和接口中


标签:java,name,--,age,接口,int,void,public,String
From: https://www.cnblogs.com/fanxn/p/18611279

相关文章

  • C# 批量替换html里面的http链接
    C#批量替换html里面的http链接usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.IO;usingSystem.Linq;usingSystem.Text;usingSystem.Text.RegularExpressions;usingSystem......
  • JAVA开源毕业设计 在线文档管理系统 Vue.JS+SpringBoot+MySQL网上订餐系统
    本文项目编号T039,文末自助获取源码\color{red}{T039,文末自助获取源码}......
  • JAVA开源毕业设计 在线文档管理系统 Vue.JS+SpringBoot+MySQL网上订餐系统
    本文项目编号T039,文末自助获取源码\color{red}{T039,文末自助获取源码}......
  • YOLOv10改进,YOLOv10利用DLKAttention融合DCNv3、DCNv4形成全新的可变形大核注意力,并二
    理论介绍完成本篇需要参考以下三篇文章,并已添加到YOLOv10代码中YOLOv10改进,YOLOv10添加DCNv3可变性卷积与C2f结构融合(无需编译)YOLOv10改进,YOLOv10添加DCNv4可变性卷积(windows系统成功编译),全网最详细教程YOLOv10改进,YOLOv10添加DLKA-Attention可变形大核注意力,WA......
  • RPA+大模型:开启智能工作新时代
    一、RPA技术概述(一)定义与发展历程RPA,即机器人流程自动化(RoboticProcessAutomationrpa.top),是一种通过软件机器人模拟人类在计算机上执行重复性任务的技术。它不是实体机器人,而是一种流程自动化工具,能够自动处理数据输入、处理和文件传输等任务。RPA的发展历程可以分为以......
  • 绿色全要素生产率测算代码(SBM模型、超效率SBM模型代码案例数据)
    数据介绍:SBM是Slacks-BasedMeasure或SlackBasedMeasure的缩写,一般翻译为基于松弛值测算的模型,与DEA两用,即SBM-DEA。Tone(2001)构建了一个新的DEA模型即SBM(Slacks-BasedMeasure)模型,是一个非径向(non-radial)非角度(non-oriented)DEA模型。“径向的”要求在评价效率时投入或......
  • 【经管数据】企业排污许可企业信息数据大全(1954-2022年)
    一、数据范围:数据量庞大,能统计的企业均有二、包含字段:企业名称      登记状态      法定代表人      注册资本      成立日期      核准日期      所属省份      所属城市      所属区县      电话......
  • random file
    下面是对这个问题进行深入分析后的一种思考和可能的解决方向(并非最终定稿答案,仅为参考思路)。问题本身需要在每次操作(插入或删除一条鱼)后,求出当前鱼群中在最优策略下最多能产生的危险打斗次数。问题重述:我们有一个动态维护的鱼群集合,每条鱼有一个重量(a_i)。打斗规则为:每一轮......
  • Spring Cloud 负载均衡配置 (@LoadBalanced)
    一、负载均衡目前是两种Ribbon和spring-cloud-loadbalancer-Ribbon已经闭源配置策略较多:轮询,随机,权重,自定义四种负载均衡方案配置方式yml注解-spring-cloud-loadbalancer属于springcloud,项目兼容性更好配置策略:更注重自定义(默认为轮询)配置方式注解......
  • python装饰器详解
    一、函数装饰器 #上面是装饰器,下面是原函数defifren(p):#p是额外带来的参数,因为要带参数p所以多了一层函数嵌套defplusnihao(f):defwraper():#核心装饰器代码,f代指sayhello函数,是由上一层传入进来的,本层负责增加前后功能f()......