Java接口

Java接口是一种抽象的数据类型,定义了一组方法的集合,而不是具体的实现。接口可以被类实现,一个类可以实现多个接口。在Java中,接口使用关键字interface来定义。

接口中的方法默认是public和abstract的,不需要显示地声明。接口中可以包含常量,常量默认是public static final的。接口中不能包含实例变量。接口可以继承其他接口,但是不能继承类。

接口的主要作用是定义一种约定,它规定了实现类必须提供哪些方法。这样,不同的实现类可以有不同的具体实现,但是它们都必须提供接口中定义的方法。

接口的另一个作用是实现多态。通过接口,可以将不同的对象当做同一种类型来使用,从而实现代码的可扩展性和可维护性。

以下是一个Java接口的示例:

java 复制代码
public interface Animal {
    void eat();
    void sleep();
}

public class Cat implements Animal {
    @Override
    public void eat() {
        System.out.println("Cat is eating");
    }

    @Override
    public void sleep() {
        System.out.println("Cat is sleeping");
    }
}

public class Dog implements Animal {
    @Override
    public void eat() {
        System.out.println("Dog is eating");
    }

    @Override
    public void sleep() {
        System.out.println("Dog is sleeping");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal cat = new Cat();
        Animal dog = new Dog();

        cat.eat();
        cat.sleep();

        dog.eat();
        dog.sleep();
    }
}

在这个示例中,Animal是一个接口,定义了eat()和sleep()两个方法。Cat和Dog类都实现了Animal接口,提供了自己的具体实现。在Main类中,我们可以将Cat和Dog对象当做Animal类型来使用,这样可以方便地添加新的Animal实现类。

相关推荐
tealcwu2 分钟前
【Unity基础】为什么游戏需要物理按键映射?从 Unity Input Manager 到跨引擎输入设计
java·游戏·unity
vipxieliang16 分钟前
Spring Boot 性能优化实战:从启动加速到运行时调优
java·spring boot
AI全栈学习助手29 分钟前
告别“转圈等待”:Spring Boot + SSE 让大模型像 ChatGPT 一样流式输出
java·人工智能·spring boot·后端·aigc
天天被压力30 分钟前
【A股分钟级高频数据完全手册 #02】Python调用股票1分钟数据接口:Pro版最新分时取数与字段解析
java·人工智能·python
代码不停30 分钟前
Spring Aop
java·数据库·spring
时间的拾荒人38 分钟前
CMake 实战指南:从基础语法到静态库/动态库制作与链接
开发语言·c++·面试
道尔柯南1 小时前
C++ STL 入门详解:从认识标准模板库到掌握学习方法
java·c++·学习方法
杨凯凡1 小时前
Spring Boot 4 升级为什么卡在 Jackson 3?包名、配置与兼容迁移指南
java·spring boot 4·技术升级·jackson 3·spring framework
天天被压力1 小时前
【A股分钟级高频数据完全手册 #01】Pro版接口体系总览与REST鉴权:42篇地图与从0接入
java·人工智能·python
xyouyuweizhu1 小时前
Java InetAddress 详解:从 IP 地址表示到主机名解析
java·开发语言·python