不能用来修饰interface的有

Java 同时被 2 个专栏收录
26 篇文章 1 订阅
6 篇文章 0 订阅

不能用来修饰interface的有( )(仅限外部接口)

题目:不能用来修饰interface的有( )(仅限外部接口)

A private

B public

C protected

D static


题目及解析均来源于牛客,仅用于学习,侵权删

解析:

1、抽象类中的抽象方法(其前有abstract修饰)不能用privatestaticsynchronizednative访问修饰符修饰。原因如下:

  • 抽象方法没有方法体,是用来被继承的,所以不能用private修饰;
  • static修饰的方法可以通过类名来访问该方法(即该方法的方法体),抽象方法用static修饰没有意义;
  • 使用synchronized关键字是为该方法加一个锁。而如果该关键字修饰的方法是static方法,则使用的锁就是class变量的锁。如果是修饰类方法,则用this变量锁。但是抽象类不能实例化对象,因为该方法不是在该抽象类中实现的,而是在其子类实现的。所以。锁应该归其子类所有。所以,抽象方法也就不能用synchronized关键字修饰了;
  • native,这个东西本身就和abstract冲突,他们都是方法的声明,只是一个把方法实现移交给子类,另一个是移交给本地操作系统。如果同时出现,就相当于即把实现移交给子类,又把实现移交给本地操作系统,那到底谁来实现具体方法呢?

2、接口是一种特殊的抽象类,接口中的方法全部是抽象方法(但其前的abstract可以省略),所以抽象类中的抽象方法不能用的访问修饰符这里也不能用而且protected访问修饰符也不能使用,因为接口可以让所有的类去实现(非继承),不只是其子类,但是要用public去修饰。**接口的设计理念是“has-a”,而抽象类的设计理念是“is-a”。**接口可以去继承一个已有的接口。


答案:ACD 易错选:AD

来源牛客

  • 4
    点赞
  • 0
    评论
  • 13
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:数字20 设计师:CSDN官方博客 返回首页

打赏作者

yZzc_XQ

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值