首页 > 试题广场 >

以下哪个接口的定义是正确的?( )

[单选题]
以下哪个接口的定义是正确的?( )
  • interface  B
    {  void print()  {  } ;}
  • interface  B
    { static void print() ;}
  • abstract  interface  B  extends  A1, A2  //A1、A2为已定义的接口
    { abstract  void  print(){  };}
  • interface  B
     {  void  print();}
选D,
A,接口中方法的默认修饰符时public abstract,抽象方法可是没有方法体的,没有大括号{}
B,JDK8中,接口中的方法可以被default和static修饰,但是!!!被修饰的方法必须有方法体。
C,注意一下,接口是可以多继承的。整个没毛病,和A选项一样,抽象方法不能有方法体
发表于 2018-06-29 11:38:40 回复(10)
接口中的方法默认为public abstract,属性默认为public static final。接口中的方法不能有实现,Java中类只支持单继承,而接口可以支持多继承。
A、C中方法不能有方法体,B中方法前不能有static
发表于 2017-06-02 17:13:29 回复(11)
jdk1.8新特性,接口中的方法可以用static,default修饰,且二者修饰的方法要求有方法体
发表于 2018-03-09 11:41:42 回复(3)

总结一下接口中的方法问题:

1.接口方法的默认修饰符是public abstract,抽象方法没有方法体、大括号
2.jdk1.8中,接口中的方法可以被default和static修饰,被修饰的方法必须有方法体。
3.jdk1.9中,接口中的方法 可以被private修饰,也要有方法体。

下面 介绍一下接口中的私有方法:
当我们在一个接口中写多个默认方法或者静态方法的时候,会遇到代码重复问题,我们可以将重复代码提取出来,创建一个新的方法,并用
private修饰,创建了一个只有接口可以调用的私有方法。
私有方法格式:
默认私有方法:当多个默认方法代码重复时使用    格式:private 返回值 方法名(){}
静态私有方法:当多个静态方法代码重复时使用    格式:private static 返回值 方法名(){}

私有方法可以供接口中的默认方法或者静态方法调用:
私有非静态方法:供默认方法、私有非静态方法使用
私有静态方法:供接口中所有有方法体的方法使用
发表于 2020-02-24 11:10:13 回复(0)
A.接口里的方法没有方法体;
B.方法修饰应该是public static final;
C.java是单继承;
D.正确答案。
发表于 2017-05-15 20:46:36 回复(7)
A.接口中的方法默认都是抽象方法,抽象方法不能有方法体
B.jdk1.8后确实用static和default修饰接口中的方法,但此时方法必须得有方法体
C.extends是继承的关键字,A1A2是接口。而且抽象方法里不能有方法体
D.正确
发表于 2021-12-10 09:43:11 回复(0)
B多个static
发表于 2017-06-10 10:48:25 回复(1)
1. 接口中的方法默认为 public abstract  ;属性默认为public static final ,但抽象方法不能有方法体;
2. jdk1.8新特性,接口中的方法可以用 default,static修饰,但必须有方法体;
3.类不能多继承但接口可以。
发表于 2022-03-23 22:54:34 回复(0)
JDK8及之后,接口中可以声明全局常量(public static final)、抽象方法(public abstract)、默认方法、静态方法,其中全局常量可以省略public static final,抽象方法可以省略public abstract
发表于 2022-01-23 11:56:22 回复(0)
A 接口不能有方法体
B 接口方法默认为public abstract ,属性默认public static final,JDK8中方法可以用default或static修饰,但是被修饰方法必须要有方法体;
C 接口支持多继承

发表于 2021-12-21 11:37:15 回复(0)
A:接口默认使用abstract修饰,因此不能拥有方法体,也就是{}。B:jdk1.8中,接口可以用default和static修饰,但是需要有方法体。C:接口可以多继承,方法默认是抽象方法,是没有方法体的。D:定义正确。
发表于 2021-10-29 16:20:57 回复(0)
选D, A,接口中方法的默认修饰符时public abstract,抽象方法可是没有方法体的,没有大括号{} B,JDK8中,接口中的方法可以被default和static修饰,但是!!!被修饰的方法必须有方法体。 C,注意一下,接口是可以多继承的。整个没毛病,和A选项一样,抽象方法不能有方法体
发表于 2021-04-12 11:06:46 回复(0)
抽象方法是没有方法体的,所以A选项应去掉大括号 {}
发表于 2021-03-12 10:21:35 回复(0)
抽象的方法是没有方法体的及没有大括号{}
接口中的方法默认是Public abtract
发表于 2019-03-13 13:04:55 回复(0)
1.接口中的方法,默认public abstract修饰
2.接口中的方法需要被实现,所以不能是static final等
3.jdk8中接口可以定义static default等方法,但是必须有方法体
发表于 2018-09-21 09:07:55 回复(0)
接口默认使用abstract修饰,因此不能拥有方法体,也就是{}。
jdk1.8中,接口可以用default和static修饰,但是需要有方法体。
发表于 2023-02-15 20:22:25 回复(0)
接口中方法的修饰符默认(可省略)是public abstract,接口中成员变量的修饰(可省略)是public static final。 类只有单继承,接口有多继承。
发表于 2022-02-05 22:11:52 回复(0)
我记得高版本jdk可以使用static修饰方法了
发表于 2022-01-14 22:45:07 回复(1)
A:接口里面的 方法不能有方法体
B、C:接口里面的 方法只能用public和abatract修饰 ,不写的话默认是public abstract修饰。
发表于 2017-06-12 10:04:38 回复(0)
A,B中,C中,方法不能有实现,还有C中,既然A1,A2为接口,不会是extends
编辑于 2017-05-17 15:02:27 回复(7)