JAVA中为什么要使用接口,继承接口不是还要重写方法吗?为什么不直接写那些方法呢?

我的意思是为什么不直接写方法而要使用继承还要去重写其所有方法呢?

接口的最主要的作用是达到统一访问
那么什么叫统一访问呢
举个例子
你这样想,我做一个USB接口,有个读的抽象方法 那叫read()吧,然后mp3类实现,U盘类实现,移动硬盘类实现,这样我用的时候用USB a=new 【类名】;这样a.read();要是我类名里写U盘,就读U盘,写mp3就读mp3,而这个名字可以从属性文件里读,你写哪个就用哪个了
这个就叫统一访问,因为你实现这个接口的类的方法名相同,但是实现内容不同
我用接口来定义对象不就可以做到统一访问了吗?接口主要针对多个类实现它来说的,要是只有一个类当然可以不用接口了。。。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-10-18
这样跟你说吧,比如一家生产主板的 厂商,它生产主板时,肯定会有显卡、声卡、内存、硬盘等等一大堆接口,如果 全让主板商自己设定方法的话 那不是很麻烦?如果人家显卡的制造商升级显卡了 那主板生产商 就必须得重新制造主板以匹配显卡, 所以说这个是很不方便的。
所以 就只设定一个接口就好了,具体的实现方法,你显卡生产商自己搞定,硬盘生产商就自己搞定硬盘的实现方法,那不是我主板生产商的事,我只给你们提供接口就OK了,
JAVA 接口就是这个作用,如果 你学到后面就感觉到接口是多么重要了

看 完这个例子 我想你应该明白接口了
第2个回答  2009-10-18
把常用的方法抽象出来,放到一个接口里,具体类按上接口后,再根据类的情况编写方法体。

这是JAVA的重要编程思想:
问题领域->对象模型中的对象->对象模型中的类->对象模型中的父类。

注意最后从 对象模型中的类->对象模型中的父类 这一步,这样做的目的可提高两个系统间的松耦合。
第3个回答  2009-10-18
去看一下设计模式,就知道接口是Java的主角
第4个回答  2009-10-18
接口用来制定规则...

JAVA中为什么要使用接口,继承接口不是还要重写方法吗?为什么不直接写那 ...
这个就叫统一访问,因为你实现这个接口的类的方法名相同,但是实现内容不同 我用接口来定义对象不就可以做到统一访问了吗?接口主要针对多个类实现它来说的,要是只有一个类当然可以不用接口了。。。

java 中普通类继承,抽象类继承,接口类继承,子类一定要重写父类中的方 ...
不一定。1. 普通类继承,并非一定要重写父类方法。2. 抽象类继承,如果子类也是一个抽象类,并不要求一定重写父类方法。如果子类不是抽象类,则要求子类一定要实现父类中的抽象方法。3. 接口类继承。如果是一个子接口,可以扩展父接口的方法;如果是一个子抽象类,可以部分或全部实现父接口的方法;如...

...重写方法吗?接口是必须的但是普通的继承是不是必须的?
如果父类是抽象类,并且有抽象方法,那么子类必须重写父类的抽象方法,或者子类声明为抽象类。如果父类是个普通类,那么不是必须重写父类的方法。一个类如果实现了某个接口,那么此类必须实现接口中的所有方法,或者此类声明为抽象类。

为什么使用接口?
就是,默认适配模式,意思就是说,首先定义一个接口,通过抽象类实现这个接口,并实现一些子类不需要一定实现的方法,然后,子类就可以选择是继承接口,实现所有方法,还是直接继承这个抽象类实现具体需要的方法,定义成抽象类是为了以后要其子类来继承

java中,实现接口的方法的过程是重写吗?
是重写(更准确的应该说是实现)。解释:接口类中定义的都是抽象方法,没有实现,所以当有接口被继承后,必须实现接口类中的所有构造方法,这个过程就是重写接口方法,之后可以重新填写方法内容,但是方法的名,参数类型和个数、参数返回值类型不能改变。

java中,一个类实现某个接口,必须重写接口中的所有方法吗
不一定,关键要看子类是否是抽象类。如果子类是非抽象类,则必须实现接口中的所有方法;如果子类是抽象类,则可以不实现接口中的所有方法,因为抽象类中允许有抽象方法的存在。

Java中接口到底是什么,老是听到什么你给我提供一个接口之类的话语。
其实接口就是一个标准别人说让你提供一个接口,就是让你提供一个标准,让他知道他该以一个什么样的格式来调用你的方法。这样他就可以在你方法还没写完的时候就可以写他自己的代码了,他只需要按照这个标准来调用你的方法就可以了,你也同样按照这个标准来写,你俩可以一起写,写完了就直接可以用,不...

Java中 什么情况下使用接口?什么情况下使用抽象类?各自的优势是...
首先,abstract class在Java语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。也许,这是Java语言的设计者在考虑Java对于多重继承的支持方面的一种折中考虑吧。 其次,在abstract class的定义中,我们可以赋予方法的默认行为。但是在interface的定义中,方法却不能拥有默认行为,...

Java中为什么接口可以继承接口,但是接口不能实现接口呢?
这个问题很简单,接口是用来声明方法的,而不能写具体的实现,也就是没有方法体 然而实现一个接口,必须重写其声明的所有方法 因此,综上所述一个接口是无法实现另一个接口的

java继承抽象类和接口问题
接口,你可以理解为功能。功能是指它具备什么能力。所以类要实现一个接口,就是具备这个功能,有这个能力。所以实现接口就要实现里面所有的方法。那么本质上为什么要实现抽象类的抽象方法,和接口中所的的方法呢?因为如果你不实现,那么调用者看到你实现了某个功能,或继承了某个类,它要掉用接口里的方...

相似回答