首页 >> 编程狮 >> 后端

java接口(interface)详解

  • 后端
  • 2025-07-14
  • 点击次数:

Java中的接口(interface)是面向对象编程中的核心概念之一,它通过interface关键字定义,

用于定义一组行为规范和常量集合。接口的核心目的是解耦实现与行为,提供统一的标准,

并支持多继承特性。

一、接口定义

【访问修饰符】interface  接口名称{

}

示例:public interface Animal{

                //常量(默认是public static final )

                int    LEGS=4;

                //抽象方法(默认是public abstract )

                void  makeSound();

                //默认方法(java8+)

                default  void  sleep(){

                    System.out.println("this animal is sleeping.");

                }

                //静态方法(java8+)

                static  void   info (){

                    System.out.pringtln("animal  interface  provides  animal  behaviors.");

                }

}

二、接口的核心特性

1、行为规范

接口定义了一组方法签名(即行为契约),实现类必须遵循这些规范。

抽象方法没有具体实现,实现类必须提供具体实现。

示例:public class Dog implements  Animal{

                @override

                public  void  makeSound(){

                    system.out.println("hello  hello");

                }


2、多继承支持

java类只能单继承(一个类只能继承一个父类),但一个类可以实现多个接口。

示例:public  class smartdog  implements  Animal, Pet{

                @override

                public void makeSound(){

                

                }

                @override

                public void  play(){

    

                }

}

3、常量集合

接口中定义的常量默认是public  static  final 的,默认在声明时初始化。

示例:interface   Constants{

            int MAX_VALUE=100;//默认是public  static  final

            String  message="hello world";

}

4、默认方法与静态方法

默认方法(default):提供默认实现,实现可以选择是否重写。

静态方法(static):直接通过接口名调用,不依赖实现类。

5、私有方法(java9+)

接口可以定义私有方法,用于辅助默认方法和静态方法.

三、接口的使用规则

1、实现接口

类通过implements 关键字实现接口,并覆盖所有抽象方法。

2、接口引用与多态

接口引用可以指向实现类的对象,实现多态性。

示例:public class Test{

                    public static void  main(String[] args){

                        Animal  dog =new  Dog();

                        dog.makeSound();//输出hello hello

                        dog.sleep();//调用父类Animal的默认方法

                    }

    }

3、接口的继承

接口可以通过extends继承其他接口,形成接口层次结构。

示例:interface Mamal  extends   Animal {


标签:

上一篇
抽象类abstract

下一篇
没有了