在 java 默认方法允许在没有显式实现的情况下在界面中定义实现。这可以用来在不损坏现有实现的情况下向现有界面添加新的方法。语法是:default
无需显式实现,默认方法提供了在接口中定义实现的选项。在不破坏现有实现的情况下,在需要向现有接口添加新方法时,这是非常有用的。
语法
默认方法在接口中的语法如下:
立即学习“Java免费学习笔记(深入);
default <return-type> <method-name>(<parameters>) { // 方法体 }
示例
让我们创建Shape接口,定义draw()方法。
public interface Shape { void draw(); }
现在,假设我们想在Shape界面添加一种新的getarea()方法。我们可以使用默认方法来实现这种方法,如下所示:
public interface Shape { void draw(); default double getArea() { return 0.0; } }
实现Shape接口的类现在可以显式覆盖getArea()方法,也可以默认实现。
实战案例
假设我们有一个Rectangle类,它实现了Shape接口。我们需要在Rectangle类中覆盖draw()方法,并使用Shape接口的getarea()默认方法来计算矩形面积。
public class Rectangle implements Shape { private double length; private double width; public Rectangle(double length, double width) { this.length = length; this.width = width; } @Override public void draw() { // 绘制矩形 } @Override public double getArea() { return length * width; } }
我们可以在不强制实现所有现有实现的情况下,在Shape接口中添加新的行为。
以上是如何在Java中定义默认方法的详细内容。请关注图灵教育的其他相关文章!