java 接口中的方法一定没有方法体吗?

如题
2024-12-27 20:34:25
推荐回答(4个)
回答1:

  1. Java不支持多重继承,即一个类只能有一个父类

  2. 为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口

  3. 接口是抽象方法和常量值定义的集合,是一种特殊的抽象类

  4. 接口中只包含常量和方法的定义,没有变量和方法的实现

  5. 接口中的所有方法都是抽象的

  6. 接口中成员的访问类型都是public

  7. 接口中的变量默认使用public static final标识(可以在定义的时候不加此修饰,系统默认)
  1. 接口通过使用关键字interface来声明格式:interface 接口的名字

接口体:

  1. 接口体中包含常量定义和方法定义两部分

  2. 接口体中只进行方法的声明,不允许提供方法的实现

  3. 方法的定义没有方法体,且用分号结尾

回答2:

在java8中接口内的方法可以包含方法体了,使用default关键字修饰方法

interface Converter {
    T convert(F f);
    default void haha(){
     System.out.println("我是个接口默认方法");
    }
}

回答3:

不一定。把接口中的方法定义为default或static或private方法,它就可以有方法体。

回答4:

Java8 中已经可以存在方法体了