Java接口详解

Java方法

定义:java方法

在这里插入图片描述
方法包含一个方法头和一个方法体

关于java修饰符

  • 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
  • 返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字void。
  • 方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
  • 参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
  • 方法体:方法体包含具体的语句,定义该方法的功能。
修饰符 返回值类型 方法名(参数类型 参数名){
    ...
    方法体
    ...
    return 返回值;
}

接口(interface)

接口的作用

``

定义:接口

接口(Interface)是用来定义行为契约的一种机制,它包含了方法签名的集合,但不包含方法的具体实现

通过interface关键字来定义一个接口,接口中只允许存在抽象方法(默认方法除外,Java 8 开始支持)、静态方法和常量

类可以通过 implements 关键字来实现接口,这意味着该类必须提供接口中所有声明的抽象方法的具体实现。

下面分别展示下对应的接口方法定义:

抽象方法
  • 在接口中声明的所有方法都默认是抽象的(即使没有使用 abstract 关键字),它们只有方法头(包括访问修饰符、返回类型、方法名以及参数列表),没有方法体

方法返回类型有哪些

public interface myInterface{
	ReturnType methodName(ParamType param1, ParamType param2);//这里是默认abstract
}
默认方法(Java 8及以上版本)
  • 自Java 8开始,接口也可以包含有具体实现的方法,即所谓的默认方法,通过使用== default== 关键字:
public interface myinterface{
	default void someDefaultMethod() {
        // 这里提供了方法的具体实现
    }
}
静态方法(Java 8及以上版本)
  • 同样从Java 8开始,接口还能声明静态方法
public interface MyInterface {
    static void staticMethod() {
        // 静态方法的实现
    }
}
常量成员
  • 接口中的变量默认都是 public static final 的,即接口常量,声明时无需指定这些关键字:
public interface MyInterface {
    String CONSTANT_NAME = "SomeValue";
}

`实现接口的类必须提供接口中所有抽象方法的实现,除非该类本身也是抽象的。若不提供实现,则该类也必须声明为抽象类。

当类实现接口时,使用 implements 关键字:`

public class MyClass implements MyInterface {
    @Override
    public void methodName(ParamType param1, ParamType param2) {
        // 实现接口中methodName方法
    }
}

但是问题来了:实现接口的类必须提供接口中所有抽象方法的实现 ?所以接口有多少个方法,那对应的实现类就会有多少方法吗?

是的,当你创建一个类去实现一个接口时,该类必须实现接口中定义的所有抽象方法。也就是说,类中需要提供接口中每个方法的具体实现。如果不这样做,那么该类就必须被声明为抽象类(使用 abstract 关键字)。

关于.java文件

在Java编程中,一个Java源文件(.java文件)中确实可以有且仅有一个公开(public)的类,且该类的名称必须与文件名完全一致(包括大小写和包名)。然而,同一个.java文件中还可以包含任意数量的非公开(non-public)类、内部类(包括静态内部类和非静态内部类)、枚举、接口以及注解类型等。

1.如果有公开类,公开类必须单独存放在以其类名命名的.java文件中。
2.单个.java文件中可以包含任意数量的非公开类、内部类、接口、枚举以及注解等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值