【Java 接口】接口(Interface)的定义,implements关键字,接口实现方法案例

简介: 【Java 接口】接口(Interface)的定义,implements关键字,接口实现方法案例


接口简介 🎃

Java中的接口(Interface)是一种特殊的抽象类,它只包含了方法的声明,而没有方法的实现。接口可以看作是一种规范或者契约,它规定了实现类必须实现哪些方法,但是并不关心这些方法的具体实现。

接口的定义 🧧

public interface 接口名 {
    // 声明方法,不包含方法体
    返回类型 方法名(参数列表);
    返回类型 方法名(参数列表);
    // ...
}

接口名可以由字母数字下划线组成,但是不能以数字开头;方法的声明和普通方法一样,只是没有方法体,直有方法签名

接口实现类名定义 🎁

接口的实现类必须实现接口中声明的所有方法, 否则会编译错误, 实现类使用implements关键字来实现接口

public class 实现类名 implements 接口名 {
    // 实现接口中声明的所有方法
    返回类型 方法名(参数列表) {
        // 方法体
    }
}

接口实现类小案例 🎈

下面是一个简单的例子,定义了一个Shape接口,包含了计算面积和周长的方法,以及一个Circle类和一个Rectangle类分别实现了这个接口

----------------------------------------------------------------------------------------------
public interface Shape {
    // 计算面积
    double getArea();
    // 计算周长
    double getPerimeter();
}
----------------------------------------------------------------------------------------------
public class Circle implements Shape {
    private double radius; // 圆的半径
    public Circle(double radius) {
        this.radius = radius;
    }
    @Override
    public double getArea() {
        return Math.PI * radius * radius;
    }
    @Override
    public double getPerimeter() {
        return 2 * Math.PI * radius;
    }
}
----------------------------------------------------------------------------------------------
public class Rectangle implements Shape {
    private double width; // 矩形的宽
    private double height; // 矩形的高
    public Rectangle(double width, double height) {
        this.width = width;
        this.height = height;
    }
    @Override
    public double getArea() {
        return width * height;
    }
    @Override
    public double getPerimeter() {
        return 2 * (width + height);
    }
}
----------------------------------------------------------------------------------------------

在上面的例子中,Shape接口定义了getArea()getPerimeter()两个方法,Circle类和Rectangle类分别实现了这个接口,并实现了这两个方法

后话 🎰

不知不觉,Java 基础部分 就已经写到 面向对象第二大部分了,希望各位学习顺利,大家一起加油

大家一定要提起精神,抓紧基础,一些文档上并未提及的API大家也是要去看的,不单单是看我写的这一篇博客,不过现在看来,Java SE针对有点基础的同学来说还是比较简单易学的


给大家推荐一个国内免费ChatGPTAI 文本工具

也比较推荐大家去使用ChatGPT的,不过借用外力工具时,不会去搜没关系,一定要时时刻刻的去学习,永远借助外力而自己不去丰富技术的人是不会有任何成就的。

相关文章
|
5月前
|
Java Go 开发工具
【Java】(9)抽象类、接口、内部的运用与作用分析,枚举类型的使用
抽象类必须使用abstract修饰符来修饰,抽象方法也必须使用abstract修饰符来修饰,抽象方法不能有方法体。抽象类不能被实例化,无法使用new关键字来调用抽象类的构造器创建抽象类的实例。抽象类可以包含成员变量、方法(普通方法和抽象方法都可以)、构造器、初始化块、内部类(接 口、枚举)5种成分。抽象类的构造器不能用于创建实例,主要是用于被其子类调用。抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类abstract static不能同时修饰一个方法。
278 1
|
6月前
|
算法 安全 Java
除了类,Java中的接口和方法也可以使用泛型吗?
除了类,Java中的接口和方法也可以使用泛型吗?
212 11
|
7月前
|
存储 缓存 安全
Java集合框架(二):Set接口与哈希表原理
本文深入解析Java中Set集合的工作原理及其实现机制,涵盖HashSet、LinkedHashSet和TreeSet三大实现类。从Set接口的特性出发,对比List理解去重机制,并详解哈希表原理、hashCode与equals方法的作用。进一步剖析HashSet的底层HashMap实现、LinkedHashSet的双向链表维护顺序特性,以及TreeSet基于红黑树的排序功能。文章还包含性能对比、自定义对象去重、集合运算实战和线程安全方案,帮助读者全面掌握Set的应用与选择策略。
656 23
|
Java
Java’Interface’接口简单练习题
Java’Interface’接口简单练习题
241 0
|
Java
java中的interface接口
接口:java接口是一些方法表征的集合,但是却不会在接口里实现具体的方法。 java接口的特点如下: 1、java接口不能被实例化 2、java接口中声明的成员自动被设置为public,所以不存在private成员 3、java接口中不能出现方法的具体实现。
974 0
|
5月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
277 1
|
5月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
296 2
|
6月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案
Java 数据库 Spring
263 0
|
6月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
449 16