Java中extends 与 implement 区别

简单说: 
1.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,
2.JAVA中不支持多重继承,但是可以用接口来实现,这样就要用到implements,
3.继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了 ,
      比如  class A extends B implements C,D,E

术语话来说: 
      extends 继承类;implements 实现接口。

类和接口是不同的:类里是有程序实现的;而接口无程序实现,只可以预定义方法

Java也提供继承机制﹐但还另外提供一个叫interface的概念。由于Java的继承机制只能提供单一继承(就是只能继承一种父类别)﹐所以就以Java的interface来代替C++的多重继承。interface就是一种介面﹐规定欲沟通的两物件﹐其通讯该有的规范有哪些。

如以Java程式语言的角度来看﹐Java的interface则表示:

一些函数或资料成员为另一些属于不同类别的物件所需共同拥有,则将这些函数与资料成员定义在一个interface中,然后让所有不同类别的Java物件可以共同操作使用之。 
      Java的class只能继承一个父类别(用extends关键字), 但可以拥有(或称实作)许多interface(用implements关键字)。

extends和implements有什么不同? 
      对于class而言,extends用于(单)继承一个类(class),而implements用于实现一个接口(interface)。

interface的引入是为了部分地提供多继承的功能。在interface中只需声明方法头,而将方法体留给实现的class来做。 这些实现的class的实例完全可以当作interface的实例来对待。 在interface之间也可以声明为extends(多继承)的关系。

注意: 一个interface可以extends多个其他interface。

时间: 2024-11-02 10:02:48

Java中extends 与 implement 区别的相关文章

JAVA中extends 与implements区别

JAVA中extends 与implements区别 JAVA中extends 与implements有啥区别?1. 在类的声明中,通过关键字extends来创建一个类的子类.一个类通过关键字implements声明自己使用一个或者多个接口.extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法; implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用2.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract

java中extends与implements区别

继承和接口两者间的区别有多种解释,相信有少部分初步了解的时候有些困惑,在这里发表了个人理解的解释,如果你能看得懂那就更好了,你已经是大神了请忽略这篇理解不完整的解释吧! 首先,看看他两个概念,跟其随后是通熟易懂的口水话来解释. [extends:继承类].我们定义了一个类,类里面有方法体(是一些功能的实现),在另外的类中有需求我们前面定义的类里面的功能,那么可使用extends这个关键字来继承前类的功能.我们可将前面的那个类称为父类,后面的那个类称为子类,就像儿子继承父亲一些事物,如财产.表示为

java 关于extends 和implement的区别

在java中extends用于继承父类,只要父类不是声明为final或者为abstract类就可以,但是java不支持多重继承.可以使用接口实现多重继承implements,继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了比如class A extends B implements C,D,E. java 关于extends 和implement的区别

java中extends与implements的区别

学了java很久了,久不用之后给同学解决一个java问题的时候,就卡在这个标题上了. 下面是java中extends与implements的区别: 1. 在类的声明中,通过关键字extends来创建一个类的子类.一个类通过关键字implements声明自己使用一个或者多个接口. extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法; implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用 2.extends是继承父类,只要那个类不是声明为f

JAVA中extends 与implements有啥区别?

JAVA中extends 与implements有啥区别?1. 在类的声明中,通过关键字extends来创建一个类的子类.一个类通过关键字implements声明自己使用一个或者多个接口.extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法; implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用2.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承,但是可以用接口

Java 中extends与implements使用方法 (转载)

转自:http://blog.csdn.net/chen_chun_guang/article/details/6323201 初学Java语言, 代码中的extends和implements让我感到很迷惑,现在终于弄明白它们之间的区别和用法了. //定义一个Runner接口 public inerface Runner { int ID = 1; void run (); } //定义一个interface Animal,它继承于父类Runner interface Animal extend

Java中的==和equals区别

引言:从一个朋友的blog转过来的,里面解决了两个困扰我很久的问题.很有久旱逢甘霖的感觉. 中软国际电子政务部Jeff Chi总结,转载请说明出处. 概述:        A.==可用于基本类型和引用类型:当用于基本类型时候,是比较值是否相同:当用于引用类型的时候,是比较对象是否相同.        B.对于String a = “a”; Integer b = 1;这种类型的特有对象创建方式,==的时候值是相同的.        C.基本类型没有equals方法,equals只比较值(对象中的

java中ArrayList 、LinkList区别

转自:http://blog.csdn.net/wuchuanpingstone/article/details/6678653 个人建议:以下这篇文章,是从例子说明的方式,解释ArrayList.LinkedList,但是最好的方式还是看源代码.其实ArrayList就是一个动态数组,LinkedList是一个链表.  1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构.     2.对于随机访问get和set,ArrayList优于LinkedLis

hadoop中Text类 与 java中String类的区别

hadoop 中 的Text类与java中的String类感觉上用法是相似的,但两者在编码格式和访问方式上还是有些差别的,要说明这个问题,首先得了解几个概念: 字符集: 是一个系统支持的所有抽象字符的集合.字符是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等.例如 unicode就是一个字符集,它的目标是涵盖世界上所有国家的文字和符号: 字符编码:是一套法则,使用该法则能够对自然语言的字符的一个集合(如字母表或音节表),与其他东西的一个集合(如号码或电脉冲)进行配对.即在符号集