☰
java接口学习
2026/10/8 5:59:22 网站建设 项目流程

一、接口是什么?

1. 核心定义

接口是 行为的规范/标准/契约,是Java中一种完全抽象的模板。

简单大白话:

• 抽象类:定义「这类事物是什么」(属性+部分行为)

• 接口:定义「这类事物能做什么」(只规范行为,不关心实现)

2. 核心作用

1. 解耦:把「方法声明」和「方法实现」分开

2. 统一规范:所有实现类必须遵守同一套方法标准

3. 突破单继承限制:Java类单继承、多实现

4. 多态核心载体:接口多态是项目开发最常用多态形式
二、接口的语法规则(重点必考)

1. 定义格式
// 定义接口
public interface 接口名 {
// 常量、抽象方法、默认方法、静态方法、私有方法
}
2. 接口命名规范

• 大驼峰:Run、AnimalMove、UserService

• 习惯性后缀:XXXService、XXXDao、XXXHandler(开发规范)
三、接口内部五大成员(JDK版本迭代变化)

1. JDK 7 及之前:只有两种

(1)全局常量

• 默认修饰符:public static final(可省略,系统自动补全)

• 一旦定义,不能修改
public interface MyInterface {
// 等价 public static final int NUM = 10;
int NUM = 10;
}
(2)抽象方法

• 默认修饰符:public abstract(可省略)

• 没有方法体,交给实现类重写
void test();
2. JDK 8 新增(重点实用)

(1)默认方法(带方法体)

• 修饰符:public default(default不能省)

• 作用:接口升级不影响旧实现类,解决接口扩展兼容问题
default void sayHello(){
System.out.println("我是接口默认方法");
}
(2)静态方法

• 修饰符:public static

• 只能通过接口名调用,不能通过实现类、对象调用
static void staticMethod(){
System.out.println("接口静态方法");
}
3. JDK 9 新增

私有方法 private

• 作用:抽取默认方法、静态方法的重复代码,仅供接口内部复用

• 外部无法调用
private void privateMethod(){
// 内部工具方法
}
✅ 总结口诀

• 常量:默认 public static final

• 抽象方法:默认 public abstract

• 默认方法:必须写 default,有方法体

• 静态方法:必须写 static,接口名调用

• 私有方法:JDK9,内部复用
四、接口的实现(核心使用方式)

1. 实现格式

类 实现 接口:implements
public class 类名 implements 接口名{
// 重写接口所有抽象方法
}
2. 实现规则

1. 普通类实现接口:必须重写所有抽象方法

2. 抽象类实现接口:可以不重写抽象方法

3. 重写方法时:权限只能放大不能缩小(必须public)

3. 完整入门案例

1)定义接口
// 行为标准:会跑
public interface Run {
// 抽象方法
void run();

// JDK8默认方法
default void info(){
System.out.println("奔跑接口——默认方法");
}
}
2)实现类
public class Dog implements Run{
// 强制重写抽象方法
@Override
public void run() {
System.out.println("小狗四条腿奔跑");
}
}
3)测试类
public class Test {
public static void main(String[] args) {
Dog dog = new Dog();
dog.run();
dog.info();
}
}
五、接口的多实现(Java核心亮点)

一个类可以同时实现多个接口,突破单继承限制

1. 语法
public class A implements 接口1,接口2,接口3{
// 重写所有接口的所有抽象方法
}
2. 冲突解决

1. 多个接口同名抽象方法:只需重写一次即可

2. 多个接口同名默认方法:必须主动重写,否则编译报错
六、接口与接口:多继承

接口可以 继承多个接口(类只能单继承,接口多继承)

语法
public interface C extends A,B{
// 继承A、B所有常量、抽象方法
}
作用:整合多个接口规范,形成更全面的新标准
七、接口多态(工作最常用)

1. 多态写法

父接口引用指向子类对象
Run r = new Dog();
r.run();
2. 多态优势

• 屏蔽子类细节,统一编程标准

• 便于后期替换子类,低耦合、高扩展

3. 多态弊端 & 解决

• 多态下:只能调用接口中定义的方法,不能调用子类独有方法

• 解决:向下转型
八、接口 和 抽象类 终极区别(面试必问)
对比维度 抽象类(abstract class) 接口(interface)
关系本质 是「继承」—— is-a 是「实现」—— can-do
成员变量 普通变量、常量都可以 只能是全局常量
构造方法 有构造方法 无构造方法
代码块 有静态代码块、普通代码块 无代码块
继承限制 类只能单继承 类可以多实现,接口可多继承
权限修饰 四种权限都可用 基本都是public
使用场景 抽取共性属性、共性行为 统一行为规范、解耦

一句话区分

• 有共性属性、需要模板复用 → 用抽象类

• 只定义行为标准、需要多实现、解耦 → 用接口
九、接口使用场景(开发实战)

1. 项目分层规范:Service、Dao层全部用接口定义标准

2. 统一行为规范:比如 可序列化、可比较、可克隆

3. 解耦设计:面向接口编程,不面向具体类编程

4. 回调机制:监听器、事件监听全部基于接口

5. 多态设计:集合、工具类大量使用接口多态
十、高频易错点总结

1. 接口不能实例化

2. 接口所有常量默认 public static final

3. 抽象方法默认 public abstract

4. 默认方法必须带 default,静态方法只能接口名调用

5. 类多实现时,默认方法冲突必须重写

6. 接口没有构造器,不能创建对象

7. 面向接口编程:变量类型写接口,对象new实现类
十一、核心口诀(背诵版)

接口是标准,规范行为强
常量全静态,抽象无参详
八加默认静,九加私方法
类可多实现,接口多继承
无构无代码,多态解耦王
区别抽象类,只定不存样

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询