请问java中继承和接口有什么区别?将仔细点,菜鸟。。谢谢了

用程序说明下更好

继承是extended命令,一个类只能继承一个父类,class A extended B,C这种是错误的。继承后,子类可以使用父类的方法。
接口是implements命令,一个类可以有很多接口,class A implements B,C,D是可以的。定义了接口之后,子类需要覆写掉接口中的方法,因为接口方法是没有具体实现的。追问

那什么时候定义成继承的父类,什么时候定义借口呢?

追答

public interface Student1 {
void setFee(int fee);
int getFee();
}

public class Student2 {
void setFee(int fee){
this.fee=fee;
}
int getFee(){
return this.fee;
}
}
上面有两个类,student1是接口类,2是父类。可以看出1里面的方法没有具体实现,2里面有。
要实现1的接口,用的是class A implements student1 这样类A中需要写出1中的两个方法的具体实现
要实现继承2,用的是class A extended student2 这样类A可以直接使用两个方法

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-05-05
懒得写程序
继承和接口它们要达到的目的是相同的,都是要用父类的方法(继承父类的某些或者全部特性)
区别:
1.继承不需要全部实现父类的方法,但是接口就必须要实现父类的所有方法
2.Java的机制是单继承机制,也就是说,只能继承一个类,但是能继承多个接口,所以在编程规范中我们为了增加程序的扩展性都是尽量继承接口
第2个回答  2012-05-05
对象的一个新类可从现有的类中派生,这个过程称为类继承;
继承是一种联结类的层次模型,允许和鼓励类的重用。
派生类(子类)可以从它的基类(父类)那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
如:
class Parent{
public String s;
method1(){}
}
class Child extends Parent{
methodB(){
String ss = s;
super.method1();//直接调用父类的方法;
}
}
继承只能单继承。
接口却可以被多重实现(implements)
1)接口只有定义,不可以有实现
2)接口的字段定义默认为:public static final,
接口的实现类必须都实现了接口中定义的方法;
如:
interface jump{
String j="Hello";
void jumping();
}
interface sing{
void singing();
}
//实现类 person
class person implements jump,sing{
public void jumping(){...}//jump接口中的定义实现
public void singing(){...}//sing接口中的定义实现
public void method(){
String str = j;//接口的字段定义默认为:public static final的
}
}
第3个回答  2012-05-05
继承:
A继承B: A是一种B
例如:笔记本电脑继承电脑,因为笔记本电脑是一种电脑
接口:
A实现B:A具有B的功能
例如:手机实现打电话,因为手机具有打电话的功能,手机还实现视频播放,因为手机有视频播放的功能

前面几位回答的都不错,我知道我被采纳的机会很小,不过出于对知识传播的意愿,我还是回答一次吧.
第4个回答  2012-05-05
一个类可以从他的父类那里继承一些方法,但是一个子类只能有一个父类,不能多继承,可是可以实现多个接口,
接口是一些方法的集合,如果一个类实现了一个类就必须实现这个接口的所用方法!

请问java中继承和接口有什么区别?将仔细点,菜鸟。。谢谢了
继承是extended命令,一个类只能继承一个父类,class A extended B,C这种是错误的。继承后,子类可以使用父类的方法。接口是implements命令,一个类可以有很多接口,class A implements B,C,D是可以的。定义了接口之后,子类需要覆写掉接口中的方法,因为接口方法是没有具体实现的。

【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖...
思考:将可继承的方法体(即有具体内容的方法)放在父类中以避免子类中重复代码的出现是继承的一大优势,但其并非是万能的。比如在这个案例中,三个面积计算公式都不一样,很难抽取出共同的方法体,但我们又希望子方法中都有面积计算方法且尽可能避免重复代码的出现,怎么办呢?聪明如你,肯定想到了可以...

我是一个刚入java程序开发的菜鸟,想问一下基础应该先学什么
第三步是学习Java的面向对象的编程语言的特性的地方。比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,Java的异常处理机制。对于一个没有面向对象语言背景的人来说,我觉得这个过程需要花很长很长时间,因为学习Java之前没有C++的经验,只有C的经验,我是大概花了一个月左右吧,才彻底把这些概念都搞清楚,把书上面...

我是JAVA菜鸟,大家帮我看下this.add(cp);这句话是干嘛的??
楼主这个类是继承了JFrame或者Frame类了把,是这样Frame他只是一个空的容器,你第一行构造了一个组件,但是如果不执行第二句this.add(cp);那这个组件是不会再Frame中显示的,就好像你有一张纸(Frame),然后你又有一个贴画(cp),只有把贴画贴到纸上,才能在纸上看到贴画,这个贴画才能属于这张...

map和字典的区别
第一个区别就先来说说继承关系吧 如果你baidu一下,会发现网上的大致说法与“由于Java发展的历史原因。Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现。”相同。这种说法没有错,但是不够准确,特别是对于我们这种大众菜鸟来说,如果不去深究的话,可能就会造成一些理解...

Java菜鸟问题。编程中,定义接口为什么一般用布尔类型?
呵呵,不是一般用boolean类型,这是看方法的业务吧。返回的可以是集合,也可以是泛型集合,很多的。看你的方法要做什么了。如果你只是要登录判断是否成功,不需要返回登录的用户信息就直接返回boolean就可以,当然如果需要用户信息,可以返回该javabean的集合类型。看情况而异了,好好努力,...

小弟刚刚学java.还是菜鸟.我想问问我这段代码为什么出现"需要为class...
4 《精通Hibernate:Java对象持久化技术详解》星级:适合对象:初级,中级,高级 介绍:Hibernate必备参考书,也是国人写的,难得的一本好书,而且作者是个MM。5 《Struts 2.1权威指南》星级:适合对象:初级,中级 介绍:学习Struts2的一本国人写的不错的书,不过名称显得大了点。权威指南应该只有作者才...

JAVA接口应用(菜鸟刚接触JAVA求指导)
fee=fee;\/\/ TODO Auto-generated method stub } public void setPay(int pay) { this.pay=pay;\/\/ TODO Auto-generated method stub } public static void main(String[] args){ new Graduate(3000,2000);} } --- 感觉这样用接口实在是有点没必要。

java问题:方法中能有类存在吗?
具体实现时需要把SuperType 和InterfaceType 换成具体的超类和接口。匿名内部类可以访问外部类的私有成员,其他的方式实现接口和继承类做不到 内部类应该都可以的。我觉得匿名的应该是隐藏实现,而且用完就out的那种。参考资料:http:\/\/zhidao.baidu.com\/question\/12613350.html ...

java 一个文件包含接口和类 怎么对文件命名
文件名只要符合java命令规范即可,解释:只不过是在在java类中implements接口,具体的文件名称和这个没什么关系的,但是建议命名成“接口类名+imp.java”会更方便看出实现的那个接口,但不硬性要求。

相似回答