社区
Java SE
帖子详情
关于抽象类和接口的问题!
bugpro
2003-08-18 11:42:17
问题1:
有人说:
在JAVA中,从抽象类中继承的方法,子类可以不必提供方法的实现,而从接口中继承的方法,子类必须提供方法的实现,对吗?
我认为:
我认为从接口中继承的方法,子类也可以不提供实现。对吗?
问题2:
请问:除了接口可以实现多重继承外,和抽象类还有什么区别??
请大家探讨!!
...全文
34
5
打赏
收藏
关于抽象类和接口的问题!
问题1: 有人说: 在JAVA中,从抽象类中继承的方法,子类可以不必提供方法的实现,而从接口中继承的方法,子类必须提供方法的实现,对吗? 我认为: 我认为从接口中继承的方法,子类也可以不提供实现。对吗? 问题2: 请问:除了接口可以实现多重继承外,和抽象类还有什么区别?? 请大家探讨!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bugpro
2003-08-19
打赏
举报
回复
和风之子交朋友,我的QQ:4931851
Wnyu
2003-08-19
打赏
举报
回复
:)
whyxx
2003-08-19
打赏
举报
回复
只要子类不是抽象类,不管是继承的抽象类还是接口,里面的方法都必须实现,
如果子类是抽象类,不管父类的抽象类还是接口,里面的方法都可以不实现.
抽象类和接口除了接口可以实现多重继承外,还有一个区别就是,抽象类里的方法可以
是实的,也就是实现了的方法,而接口里的方法只是是虚方法.
jxspace
2003-08-19
打赏
举报
回复
- 在JAVA中,从抽象类中继承的方法,子类可以不必提供方法的实现,而从接口中继承的方法,子类必须提供方法的实现,对吗?
Answer: 抽象类是类中有声明为abstract的方法的类,抽象类不可以实例化,比如
public abstract class ClassA{
}
在应用中你不能使用new ClassA()来创建一个对象;所有集成自抽象类的子类,要成为正常类(非抽象类)就必须全部实现抽象父类中声明的抽象函数,注意这里是“全部”,如果不全部实现,则该子类同样必须声明为抽象类。如果一个类实现了一个接口,而没有全部实现其中声明的方法,该类必须为抽象类。
- 我认为从接口中继承的方法,子类也可以不提供实现。对吗?
Answer: 类与接口关系只能是实现,即implements,接口可以继承,如
public interface InterfaceA extends InterfaceB{
}
-除了接口可以实现多重继承外,和抽象类还有什么区别??
Answer:
1.java中为避免复杂性,利用接口来“实现”“多继承”,注意这里的引号,与C++真正的多继承相比,java类的多继承“实现”只是一种“假继承”,实现多接口的类必须实现各个接口中的方法,而不是从“父类”继承而来,或者是采用集合的模式,利用其他接口实现类来实现这些接口方法。“多继承”的含义在java中名不副实。
2. 抽象类可以声明类变量,可以实现类方法,并且可以被继承;而接口是纯粹的,它只包含方法声明,以及常量,方法只是声明而不是实现。在实际的编程中,往往会遇到这样的情况,你需要一个类,该类有共有属性和共有方法为子类所共享,但是不希望这个类有实例,这个时候,抽象类是最好的OO模型。而接口,记住,它只有方法声明,也就是它只有“行为”的契约,这个契约为其实现类所遵守,所有实现类“看起来”都象接口这么个东西,在实际运用当中,调用者仅需要面对“接口”,而不用关心它“怎么”实现。
devSteven
2003-08-19
打赏
举报
回复
接口就是纯粹的抽象类,里面的方法都是abstract的
而且接口里面的数据成员都是static的
JavaSE基础视频精讲⑩:多态,
抽象类
和
接口
本课程适用于零基础小白快速入门Java语言技术,通过课程学习可以清晰了解Java多态,
抽象类
和
接口
。课程配套完整的(笔记+代码+作业)
分分钟搞定Java中的
抽象类
和
接口
!!!(abstract & interface)
在Java中,一个类如果被 abstract 修饰称为
抽象类
,
抽象类
中被 abstract 修饰的方法称为抽象方法,抽象方法不用给出具体的实现体。//
抽象类
成员变量 abstract public void func();//
抽象类
成员方法 }
抽象类
中也可以有其他普通方法、普通成员、构造方法和被static修饰的成员变量.//普通成员变量 public int b;//抽象方法 public void func2() {//普通方法 } public Shape() {
抽象类
和
接口
有什么区别
抽象类
和
接口
并不能互相替代。
抽象类
和
接口
各有不可替代的作用。
抽象类
和
接口
抽象类
和
接口
的区别:
抽象类
可以包含普通字段和成员,
接口
中不能包含普通方法,子类必须重写所有的抽象方法 抽象方法由普通类(普通字段和方法)和抽象方法组成
接口
由抽象方法和全局常量组成 使用extends继承
抽象类
,使用implements关键字实现
接口
一个
抽象类
可以实现若干个
接口
,
接口
不能继承
抽象类
,
接口
可以使用extends继承多个父类
接口
一个子类只能继承一个
抽象类
,一个子类可以实现多个
接口
接口
和
抽象类
有什么区别
接口
和
抽象类
有什么区别 你选择使用
接口
和
抽象类
的依据是什么?
接口
和
抽象类
的概念不一样。
接口
是对动作的抽象,
抽象类
是对根源的抽象。
抽象类
表示的是,这个对象是什么。
接口
表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的
抽象类
是人。说明,他们都是人。 人可以吃东西,狗也可以吃东西,你可以把“吃东西”定义成一个
接口
,然后让这些类去实现它. 所以,在高级
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章