21xrx.com
2025-07-15 19:28:11 Tuesday
文章检索 我的文章 写文章
如何在Java中实现继承
2023-06-19 09:34:25 深夜i     15     0
Java 继承 类继承 接口继承 抽象类继承

Java作为一种面向对象的编程语言,继承是其核心特性之一,它允许我们从已有类中派生出新的类。在Java中实现继承有三种方法:类继承、接口继承和抽象类继承。本文将介绍如何在Java中实现继承,并给出一些示例。

一、类继承

类继承是最常用的一种继承方式。它允许我们使用一个已有类的所有属性和方法,并在此基础上添加新的属性和方法。在Java中,我们可以通过extends关键字将一个子类与其父类相关联,实现继承。

举个例子:

public class Animal {
 int age;
 
 public void eat() {
  System.out.println("Animal is eating");
 }
}
public class Dog extends Animal {
 String breed;
 
 public void bark() {
  System.out.println("Dog is barking");
 }
}

在这个例子中,我们定义了一个父类Animal和一个子类Dog。子类Dog通过extends关键字与父类Animal建立了继承关系。在子类Dog中,我们定义了一个新的属性breed和一个新的方法bark,但同时也可以使用父类Animal中的属性和方法。

二、接口继承

接口继承是Java中另一种继承方式。接口中定义一组抽象方法和常量,实现该接口的类必须实现所有的抽象方法。如果一个类实现了该接口,那么它就可以使用该接口中定义的所有方法和常量。

举个例子:

public interface Shape {
 public void draw();
}
public class Circle implements Shape {
 public void draw() {
  System.out.println("Drawing circle...");
 }
}

在这个例子中,我们定义了一个接口Shape,其中定义了一个抽象方法draw。然后我们定义了一个实现Shape接口的类Circle,并实现了接口中的所有方法。这样我们就可以使用Circle类中定义的所有方法和常量。

三、抽象类继承

抽象类是一种特殊的类,它不能被实例化,只能被用作基类,它可以有抽象方法和非抽象方法。抽象方法没有实现,必须由子类重载来实现。

举个例子:

abstract class Shape {
  String color;
 
  abstract double area();
 
  public void setColor(String color)
   this.color = color;
 
 
  public String getColor()
   return color;
 
}
public class Circle extends Shape {
  double radius;
 
  Circle(double radius, String color) {
   this.radius = radius;
   setColor(color);
  }
  public double area() {
   return Math.PI * Math.pow(radius, 2);
  }
}

在这个例子中,我们定义了一个抽象类Shape,其中定义了一个抽象方法area和两个非抽象方法setColor和getColor。然后我们定义了一个继承自抽象类Shape的类Circle,并实现了抽象方法area。这样我们就可以使用Circle类中定义的所有方法和常量。

  
  

评论区