我是靠谱客的博主 温柔电灯胆,最近开发中收集的这篇文章主要介绍不能用来修饰interface的有不能用来修饰interface的有( )(仅限外部接口),觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
不能用来修饰interface的有( )(仅限外部接口)
题目:不能用来修饰interface的有( )(仅限外部接口)
A private
B public
C protected
D static
题目及解析均来源于牛客,仅用于学习,侵权删
解析:
1、抽象类中的抽象方法(其前有abstract修饰)不能用private、static、synchronized、native访问修饰符修饰。原因如下:
- 抽象方法没有方法体,是用来被继承的,所以不能用private修饰;
- static修饰的方法可以通过类名来访问该方法(即该方法的方法体),抽象方法用static修饰没有意义;
- 使用synchronized关键字是为该方法加一个锁。而如果该关键字修饰的方法是static方法,则使用的锁就是class变量的锁。如果是修饰类方法,则用this变量锁。但是抽象类不能实例化对象,因为该方法不是在该抽象类中实现的,而是在其子类实现的。所以。锁应该归其子类所有。所以,抽象方法也就不能用synchronized关键字修饰了;
- native,这个东西本身就和abstract冲突,他们都是方法的声明,只是一个把方法实现移交给子类,另一个是移交给本地操作系统。如果同时出现,就相当于即把实现移交给子类,又把实现移交给本地操作系统,那到底谁来实现具体方法呢?
2、接口是一种特殊的抽象类,接口中的方法全部是抽象方法(但其前的abstract可以省略),所以抽象类中的抽象方法不能用的访问修饰符这里也不能用。而且protected访问修饰符也不能使用,因为接口可以让所有的类去实现(非继承),不只是其子类,但是要用public去修饰。**接口的设计理念是“has-a”,而抽象类的设计理念是“is-a”。**接口可以去继承一个已有的接口。
答案:ACD 易错选:AD
来源牛客
最后
以上就是温柔电灯胆为你收集整理的不能用来修饰interface的有不能用来修饰interface的有( )(仅限外部接口)的全部内容,希望文章能够帮你解决不能用来修饰interface的有不能用来修饰interface的有( )(仅限外部接口)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复