当前位置:编程学习 > JAVA >>

一个普通类可以继承某个类的同时又去实现其他接口类吗?

本人为初学者,在这里请教大家一个问题:java中一个普通类可以继承某个类的同时又去实现其他接口类吗?如果可以那条件是什么?如果不可以,那是为什么? --------------------编程问答-------------------- 可以,条件是继承的类不能是final,接口好像没有。

楼下的补充下! --------------------编程问答-------------------- 一个普通的类可以继承某个类的同时又去实现其他接口  比如:

public class FramGUI extends JFrame implements ActionListener{
.........

}
这里继承了JFrame 这个类 又实现了ActionListener接口 --------------------编程问答-------------------- thanks
--------------------编程问答-------------------- 还有一个疑问:不知道听否听听大家对接口中是否可以定义变量?有什么特点?这方面的意见吗 --------------------编程问答--------------------
引用 4 楼 tankin1112 的回复:
还有一个疑问:不知道听否听听大家对接口中是否可以定义变量?有什么特点?这方面的意见吗

接口的基础,上网搜一大把。 --------------------编程问答-------------------- 继承以后是能够实现的别的接口的!!!
不能定义变量
接口是最顶级的类了,接口中的所有方法都是没有实体的,接口有什么用呢?
在实现接口的时候,可以具体实现方法的主体,但是,如果实现一个接口,那么这个接口里面的所有方法都要实现
OK,知道这些了,可以定义成员变量!因为,java中没有多重继承,只可以实现多个接口,而有很多的天然属性,也就是static final这种类型数据,我们通过实现多个接口,就可以获得各种不同的天然属性。
在实现类中具体变量没有限制,只要是数据类型匹配就可以。 --------------------编程问答-------------------- 最好的办法是写段代码亲手尝试一下 然后再问为什么这么设计 --------------------编程问答-------------------- 其实代码我知道怎么写,只是不知道里面的含义。比如:java多态重写和重载有什么区别。知道多态怎么写,但是这些内部含义和内陪区别还是有太多的不懂了,希望大家好不要介意本人问题多。 --------------------编程问答-------------------- 如何在接口和实现类中实现多态?高手们?? --------------------编程问答--------------------
引用 9 楼 tankin1112 的回复:
如何在接口和实现类中实现多态?高手们??


这个不可以的 --------------------编程问答-------------------- 类只能继承一个,接口可以实现多个,接口里的变量都是public static final的,方法都是public的未实现的。 --------------------编程问答-------------------- 类既可以继承也可以实现接口 --------------------编程问答-------------------- 你说的问题 可以不可以这样解释:
将子类的引用付给父类的引用 实现多态;继承了此接口的类是可以将其引用付给接口,以其实现此接口。解释的不是很好 可以差资料
--------------------编程问答-------------------- --------------------编程问答-------------------- 学习,,, --------------------编程问答-------------------- 除了只能继承一个类之外,还可以实现多个接口。

这个是 java.util.ArrayList<E> 的类签名:

public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable
--------------------编程问答-------------------- 回帖拿分,顺便帮顶。。。。。。。。。 --------------------编程问答-------------------- 楼主不应该问这种问题 ,怎么连看书都懒得看,什么都问.
假设你上了三年级,你问老师,老师啊,吃饭一定要用嘴吗?
你问爸妈,爸爸:"不吃饭会饿死吗?"
你再问同学,5+5等于10吗?为什么? --------------------编程问答-------------------- 当然可以啦,只要继承的类没有被final修饰 --------------------编程问答--------------------

class A{
   public void test(){}
}

class interface B{
  //接口中声明的属性默认为 public static final 的,不管你加不加
   public static final int a = 1 ;
  //接口只能定义方法,要实现方法是在实现接口类里实现的。
   public void run();
}

public class Test extends A implements B{
 //重写继承和实现的方法
   public void test(){}
   public void run(){}
}


不知道理解的正确否,很长时间没复习基础了。。  
但愿我没误导楼主吧~~

还有,代码没有经过编译器,不知道对不对,楼主检查下。 --------------------编程问答--------------------
引用 13 楼 tbag9527 的回复:
你说的问题 可以不可以这样解释:
将子类的引用付给父类的引用 实现多态;继承了此接口的类是可以将其引用付给接口,以其实现此接口。


这个解释不错 --------------------编程问答-------------------- 上面说得很清楚了,也不知道要讲点什么。拿分! --------------------编程问答-------------------- 当然可以啦,只要继承的类没有被final修饰 --------------------编程问答-------------------- --------------------编程问答-------------------- 当然可以,,可以多继承借口,,swing类就是这样 --------------------编程问答-------------------- 可以,没问题,继承的类不要是final修饰的,同时可以实现多个接口 --------------------编程问答-------------------- 当然可以 继承一个类的同时还可以实现多个接口 --------------------编程问答-------------------- 可以实现多个接口 --------------------编程问答-------------------- 继承以后是能够实现的别的接口的!!!
不能定义变量
接口是最顶级的类了,接口中的所有方法都是没有实体的,接口有什么用呢?
在实现接口的时候,可以具体实现方法的主体,但是,如果实现一个接口,那么这个接口里面的所有方法都要实现
OK,知道这些了,可以定义成员变量!因为,java中没有多重继承,只可以实现多个接口,而有很多的天然属性,也就是static final这种类型数据,我们通过实现多个接口,就可以获得各种不同的天然属性。
在实现类中具体变量没有限制,只要是数据类型匹配就可以。 --------------------编程问答-------------------- 修改如下:
class A{
   public void run(){}
}

class interface B{
   
   public static final int a = 1 ;
  
   public void run();

这样不会报错。。。。
为什么呢 ?
public class Test extends A implements B{
}






引用 20 楼 visket2008 的回复:
Java code

class A{
   public void test(){}
}

class interface B{
  //接口中声明的属性默认为 public static final 的,不管你加不加
   public static final int a = 1 ;
  //接口只能定义方法,要实现方法是在实现接口类里实现的。
   public void run();……
--------------------编程问答-------------------- 少个 } 呵呵、。。 --------------------编程问答-------------------- 类可以多实现不可以多继承。也就是说可以实现多个接口而不可以继承多个抽象类。接口中不可以定义变量但可以定义final static的,好像是这样。 --------------------编程问答-------------------- JAVA中类可以继承一个 但是接口可以实现多个 --------------------编程问答-------------------- 完全可以 --------------------编程问答-------------------- 可以....... --------------------编程问答-------------------- OK---晕提示内容短--可以 --------------------编程问答-------------------- 在JAVA 中 一个类是可以继承另一个类的  记住只可以继承一个类(就是extends 后面只能跟一个类)

类在继承另一个类的同时还是可以去实现多个接口  前提接口没有被 final 修饰。。

接口中是没有变量这一说法的。。

接口中要么是抽象的方法 要么是常量 。。。

接口的特点就是可以让很多类去使用它。。

接口就相当于一个规范。。

我们要想使用就要根据这个规范来行事。。 --------------------编程问答-------------------- 补充一点:

接口里面的方法没有方法体。。

我们在使用这个接口的时候我们必须实现接口的所有抽象方法。。

还有我们在继承 一个类以及实现其他接口的 时候 一定要记住  extends
应该写在 implentents 前面!!
--------------------编程问答-------------------- 继承以后是能够实现的别的接口的 --------------------编程问答--------------------
引用 16 楼 bao110908 的回复:
除了只能继承一个类之外,还可以实现多个接口。

这个是 java.util.ArrayList<E> 的类签名:

Java code1public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable
       ……



很精辟 --------------------编程问答-------------------- 已经很全了... --------------------编程问答--------------------
引用 37 楼 zxclovedsy 的回复:
在JAVA 中 一个类是可以继承另一个类的  记住只可以继承一个类(就是extends 后面只能跟一个类)

类在继承另一个类的同时还是可以去实现多个接口  前提接口没有被 final 修饰。。

接口中是没有变量这一说法的。。

接口中要么是抽象的方法 要么是常量 。。。

接口的特点就是可以让很多类去使用它。。

接口就相当于一个规范。。

我……
觉得很有道理! --------------------编程问答--------------------
引用 38 楼 zxclovedsy 的回复:
补充一点:

接口里面的方法没有方法体。。

我们在使用这个接口的时候我们必须实现接口的所有抽象方法。。

还有我们在继承 一个类以及实现其他接口的 时候 一定要记住  extends
应该写在 implentents 前面!!
有道理! --------------------编程问答--------------------
引用 19 楼 yad4183162007 的回复:
当然可以啦,只要继承的类没有被final修饰

,LZ 你可是什么叫多态 都不懂哦,
方法 的重载不叫多态,是一部分人的误区,
多态,当你学习到一定程度你就明白什么叫 多态了,
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,