问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java:一个类实现某个接口的时候可不可以只实现这个接口中的部分方法,还是必须实现接口中的全部方法呢

发布网友 发布时间:2022-04-30 18:48

我来回答

3个回答

热心网友 时间:2023-10-09 14:12

不一定,关键要看子类是否是抽象类。
如果子类是非抽象类,则必须实现接口中的所有方法;
如果子类是抽象类,则可以不实现接口中的所有方法,因为抽象类中允许有抽象方法的存在!
1、抽象类定义
抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。通常在编程语句中用 abstract 修饰的类是抽象类。在C++中,含有纯虚拟函数的类称为抽象类,它不能生成对象;在java中,含有抽象方法的类称为抽象类,同样不能生成对象。抽象类是不完整的,它只能用作基类。在面向对象方法中,抽象类主要用来进行类型隐藏和充当全局变量的角色。
2、抽象类特点
1)抽象类不能实例化。
2)抽象类可以包含抽象方法和抽象访问器。
3)不能用 sealed 修饰符修饰抽象类,因为这两个修饰符的含义是相反的。 采用 sealed 修饰符的类无法继承,而 abstract 修饰符要求对类进行继承。
4)从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实际实现。
3、与具体类的比较

1)抽象类不能直接实例化,并且对抽象类使用 new 运算符会导致编译时错误。虽然一些变量和值在编译时的类型可以是抽象的,但是这样的变量和值必须或者为 null,或者含有对非抽象类的实例的引用(此非抽象类是从抽象类派生的)。
2)允许(但不要求)抽象类包含抽象成员。
3)抽象类不能被密封。
4、与接口的比较
1)相同点

a、不能实例化;
b、包含未实现的方法声明;
c、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员)
2)不同点

a、类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承,从抽象类派生的类仍可实现接口,从而得出接口是用来解决多重继承问题的。
b、抽象类当中可以存在非抽象的方法,可接口不能,且它里面的方法只是一个声明必须用public来修饰没有具体实现的方法。
c、抽象类中的成员变量可以被不同的修饰符来修饰,可接口中的成员变量默认的都是静态常量(static final)。
d、抽象类是对象的抽象,然而接口是一种行为规范。

热心网友 时间:2023-10-09 14:12

必须实现全部方法 但是你可以这样做
你先用一个类实现这个接口 但是在这个类中方法都是空的{}这样 然后你可以继承这个类 用新的方法来覆盖那些空的方法 在GUI编程中有一个适配器的概念 就是这样的追问我就是因为适配器这个概念找出了实现的概念的,没想到还真撞对了,谢谢了。对了,还有一点,你前面说可以用另外一个类继承实现了接口的这个类,然后用新的方法来覆盖继承后的这个类的空方法,什么意思??(用新的方法来覆盖继承后的这个类的空方法???),麻烦帮我解析下

追答比如有一个接口 B
现在我用一个类A实现这个接口 并实现全部方法 但方法体是空的
class A implements B
{
public void f1()


publicvoid f2()


publicvoid f2()


其他方法。。。。。
}
如果现在我要用的类需要实现B的话 但我又不想实现B中的全部方法 我就可以直接继承A
并实现我需要的方法 如
class C extends B

public void f1()

具体的代码;

热心网友 时间:2023-10-09 14:13

必须实现接口中的全部方法!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
手机玻璃硬度是多少合适 ips屏幕硬度怎么样 手机硬度是什么意思? 2024年拼多多春节发货时间规定是什么?过年还要48小时发货吗? e元素e8100无线鼠标怎么使用 E元素X-8100靠谱吗?可以用几年? E元素X-8100现在有几种配色,哪一种配色好呢? E元素X-8100用的是什么色的轴,适合玩游戏吗? 浙c是哪个城市 浙c是哪里 榻榻米软包怎么安装 古瓷盘底部写着东华(繁体字)请问能判断是哪个时代的吗 盘底有文兴字样的青花是真的吗 一机两个 国民党湖南邵阳籍将领 一机双卡怎么设两个? 现役湖南籍将军 请问盘底有“祥元”字样的瓷盘是什么年代的? 一机双号能注册两个 双峰县的历史文化 睡眠不好的特征是什么? 一机双号能注册两个吗? 目前军队上有哪些衡阳籍的将军 每只清代青花盘底款是一个各种不同字体的“正”字,代表什么意思?_百度问一问 古代陶瓷小盘底部落款有三祥奉造四个字代表什么 年羹尧生平简介谢谢,注意简要 怎样辨别古瓷器 一机双卡能同时上两个吗 明代,年羹尧从奴隶做到将军的,又是怎样被处死的? 古瓷器在底部究竟要看什么? 古陶瓷鉴定研究:如何区别新老瓷器的胎体 一机双号能注册两个吗? 官窑款瓶底R.V.141是什么意思 睡眠不好是什么引起的? 古瓷器盘子,底坐是醴陆群印章是什么年代? java抽象类中允许非抽象方法吗?还有接口,允许非抽象方法吗? 关于青花瓷盘底的落款,有谁认识啊 java中这个接口里面是一个抽象方法?为什么没有返回值?user是什么? 青花瓷盘底部没有釉是哪个朝代的? 小米MIX 2S手机怎么样 接口中可以有非抽象的方法吗 石家庄生活频道2014开学第一课视频如何看回放 在抽象类中定义抽象方法需要用abstract声明,但是在接口中定义的抽象方法是不是可以不用abstract声明? 求文艺一点的句子 表达的是 虽然距离很远 但改变不了我们的友情 男女朋友 不要太长 不想要那种古典感觉的 求 石家庄生活频道的开学第一课(8:40)的视频或内容,急!! 黑鲨手机 小米mix2s哪个好 Java 一个抽象类中只有抽象方法的话,跟接口有什么区别? 石家庄广播电视台生活频道2015年3月7号开学第一课重播 距离原则在艺术活动中起什么作用? java语言中接口和抽象类有什么区别 小米mix2s与华为P20横评,换手机该买哪一个