当前位置: 技术问答>java相关
菜问题。
来源: 互联网 发布时间:2015-05-06
本文导语: 哪位牛人给详细解释一下接口的概念? 我搞不明白它和抽象有什么异同。 | 接口主要是提供解决问题的方法,当然也是由于Java不支持多重继承而产生的 而抽象类是不能直接New的,必须通过继...
哪位牛人给详细解释一下接口的概念?
我搞不明白它和抽象有什么异同。
我搞不明白它和抽象有什么异同。
|
接口主要是提供解决问题的方法,当然也是由于Java不支持多重继承而产生的
而抽象类是不能直接New的,必须通过继承来使用
比如你要实现一个队列,你定义了一个接口
interface DuiLie(){
//进队
public void put(){
}
//出队
public void get(){
}
}
然后,由于队列可以有多种实现方式,比如通过数组,或是通过链表
这样你只需继承DuiLie这个接口,重载这两个方法,用不同的方法实现就可以了
能用接口的地方尽量用接口,因为一方面Java不支持多重继承,另一方面不方便类的上塑造型。我也是凭自己的理解,做出这点解释,希望能起到抛砖引玉的效果
而抽象类是不能直接New的,必须通过继承来使用
比如你要实现一个队列,你定义了一个接口
interface DuiLie(){
//进队
public void put(){
}
//出队
public void get(){
}
}
然后,由于队列可以有多种实现方式,比如通过数组,或是通过链表
这样你只需继承DuiLie这个接口,重载这两个方法,用不同的方法实现就可以了
能用接口的地方尽量用接口,因为一方面Java不支持多重继承,另一方面不方便类的上塑造型。我也是凭自己的理解,做出这点解释,希望能起到抛砖引玉的效果
|
接口可以看作是诸多方法,属性的集合,在你定义 一个类,当它实现了某个接口时,那么它就同时具备了能够使用这个接口的方法和属性的条件 。而抽象类在定义后 是没有具体的方法和对象的,要想创建抽象类的方法和对象,就必须有一个继承该抽象类的子类,在子类中来完成具体方法的设计和对象的创建。这两者的相同点就是,在声明时都有一个头(即没有具体的方法或属性呈现在你面前);不同点是,在声明完一个接口后可以立即使用其方法或属性,但是,抽象类却不可以。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。