用标记接口定义类型

2023-12-17 16:18:46

标记接口是不含有任何方法的接口,它的目的是通过将特定接口应用于类来为该类添加类型信息。以下是一个示例:

public interface Drawable {
    // 标记接口,不包含任何方法
}

public class Circle implements Drawable {
    private int radius;

    public Circle(int radius) {
        this.radius = radius;
    }

    // 具体实现省略...
}

public class Rectangle implements Drawable {
    private int width;
    private int height;

    public Rectangle(int width, int height) {
        this.width = width;
        this.height = height;
    }

    // 具体实现省略...
}

public class Main {
    public static void main(String[] args) {
        Drawable circle = new Circle(5);
        Drawable rectangle = new Rectangle(10, 8);

        // 根据类型执行相应操作
        if (circle instanceof Circle) {
            System.out.println("This is a circle");
        }

        if (rectangle instanceof Rectangle) {
            System.out.println("This is a rectangle");
        }
    }
}

在上述示例中,Drawable 是一个标记接口,没有任何方法定义。CircleRectangle 类都实现了 Drawable 接口。

通过将 Drawable 接口应用于不同的类,我们为这些类添加了共同的类型信息。在 Main 类中,我们创建了一个 Circle 对象和一个 Rectangle 对象,并使用 instanceof 运算符检查对象的类型。根据类型,我们可以执行相应的操作。

通过标记接口,我们可以对具有相同特性或行为的类进行分类、组织和处理。标记接口提供了更灵活的方式,使我们能够根据类型信息进行动态操作。

文章来源:https://blog.csdn.net/wcg_jishuo/article/details/135038533
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。