java implements this_Java extends vs implements keywords

本文详细介绍了Java中`extends`关键字用于类的继承,一个类只能继承一个父类,并且可以继承父类的字段和方法。而`implements`关键字用于实现接口,一个类可以实现多个接口,必须实现接口中定义的所有方法。通过示例代码展示了类继承和接口实现的用法,强调了两者的主要区别。
摘要由CSDN通过智能技术生成

在Java中, extends用于扩展类,而implements用于实现接口。 这是Extended与Implements之间的主要区别 。

1. extends keyword

在Java中,我们可以通过使用extends keyword扩展类来继承类的字段和方法。 请注意,在Java中,一个类最多只能扩展一个类。

以AbstractList类,而后者又扩展了AbstractCollection类。

因此,基本上ArrayList类具有其父类AbstractList和AbstractCollection的方法和行为。

AbstractCollection提供了诸如contains(Object o),toArray(),remove(Object o)等方法。而AbstractList类提供了add(),indexOf(),lastIndexOf(),clear()等。一些方法被ArrayList覆盖再次。public class ArrayList extends AbstractList

implements List, RandomAccess, Cloneable, java.io.Serializable

{

//code

}

Java extends example

让我们从头开始创建一些东西,以更好地理解使用extends关键字的Java继承如何工作。 我创建了两个类ParentClass和ChildClass ,其中ChildClass extends ParentClass 。public class ParentClass {

public int dataVal = 100;

public int getDataVal() {

return this.dataVal;

}

}public class ChildClass extends ParentClass

{

}

我没有向ChildClass添加任何字段或方法,只是为了表明即使我们不对其添加任何内容,它仍然具有其父类的行为。public class Main

{

public static void main(String[] args)

{

ChildClass child = new ChildClass();

System.out.println( child.dataVal );

System.out.println( child.getDataVal() );

}

}

Program output.

100

100

2. implements keyword

接口是在Java中强制执行合同的方法。 它们强制实现类提供某种行为。 要实现接口,类必须使用implements keyword 。

在Java中,我们可以实现多个接口。 在这种情况下,类必须实现所有接口的所有方法。 (或声明自己为abstract )。

再看一次ArrayList类声明。 它实现了4个接口,即List , RandomAccess , Cloneable和

Java implements example

与前面的示例类似,让我们创建一些基本的知识来了解接口实现的外观。 我创建了两个接口Movable和Swimmable 。 两个接口都定义一种方法。

Human类同时实现两个接口,因此必须实现两个接口中定义的方法。public interface Movable {

public void move();

}public interface Swimmable

{

public void swim();

}public class Human implements Movable, Swimmable

{

@Override

public void swim() {

System.out.println("I am swimming");

}

@Override

public void move() {

System.out.println("I am moving");

}

}

现在,我们将测试人类类及其强制行为。public class Main

{

public static void main(String[] args)

{

Human obj = new Human();

obj.move();

obj.swim();

}

}

Program output.I am moving

I am swimming

显然,Human类同时实现了两个接口并定义了它们的行为。 这就是Java接口的全部目的。

3. Differences between extends vs implements

基于以上示例,让我们列出Java中extended和Implements关键字之间的区别 。extend关键字用于继承类; while关键字用于继承接口。

一类只能扩展一个类。 但可以实现任意数量的接口。

扩展超类的子类可能会覆盖超类中的某些方法。 一个类必须实现接口中的所有方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值