java - 如何检查对象是否实现了接口(interface)?

标签 java oop interface

如何检查某个类是否实现了接口(interface)? 当有:

Character.Gorgon gor = new Character.Gorgon();

如何判断gor是否实现Monster接口(interface)?

public interface Monster {

    public int getLevel();

    public int level = 1;
}

public class Character {
    public static class Gorgon extends Character implements Monster {
        public int level;
        @Override
        public int getLevel() { return level; }

        public Gorgon() {
            type = "Gorgon";
        }
    }
}

Gorgon中的getLevel()方法是否正确覆盖,所以可以返回新gorlevel创建?

最佳答案

举个例子

Character.Gorgon gor = new Character.Gorgon();

那就做吧

gor instanceof Monster

对于一个类实例做

Class<?> clazz = Character.Gorgon.class;
Monster.class.isAssignableFrom(clazz);

关于java - 如何检查对象是否实现了接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10165887/

相关文章:

Javascript 运行对象和所有这些方法

java - 如何在接受 `Derived` 的重写方法中使用类型 `Base` 的参数?

java - 语音分割

java - Spring WebSocket : broadcasting messages to users

java - 如何创建带有菜单的 JButton?

python - Decorator/Wrapper增强方法内部调用

Java Swing : JTextField doesn't lose focus as expected

java - 更新类的Jpanel

java - Java 接口(interface)应该只包含 getter 吗?

interface - Typescript - 带有接口(interface)的类的默认参数