如何判断Class c,c是某个接口的实现类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何判断Class c,c是某个接口的实现类相关的知识,希望对你有一定的参考价值。

在线等待

c 是 java.lang.Class 的一个对象
可以这么用c.newInstance() instanceof 接口 不过不直接,创建实例多余

c implements C

-->

c instanceof C == true

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Class[] face = java.lang.Class.class.getInterfaces();

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
当然也可以直接强行转化成接口
然后try catch一下
参考技术A 如果不使用instanceof的话
那试试类型转化 (接口)c

当一个类实现一个接口时,它必须实现该接口中的所有方法。(判断题)

参考技术A

对。

必须实现该接口中的所有方法。也可以自定义接口中没有的方法。抽象类实现某个接口,可以不实现所有接口的方法,可以由它的子类实现。

public interface A //定义一个接口

public void show();//定义一个接口方法

 

public abstract class AExtend implements A//抽象类实现接口A,但可以不实现show方法,由子类再去实现

 

扩展资料:

接口实现和类继承的规则不同,为了数据的安全,继承时一个类只有一个直接父类,也就是单继承,但是一个类可以实现多个接口,接口弥补了类的不能多继承缺点,继承和接口的双重设计既保持了类的数据安全也变相实现了多继承。

Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。但是接口不是类,不能使用new 运算符实例化一个接口。如 x=new comparable(......);//这个是错误来的。但是可以声明接口变量Comparable x; //这是允许的。

参考资料来源:百度百科-java接口

以上是关于如何判断Class c,c是某个接口的实现类的主要内容,如果未能解决你的问题,请参考以下文章

java 反射 , 判断Class是否是某个类的子类或父类

Delphi判断某个类是否实现了某个接口

在C#中判断某个类是否实现了某个接口

.Net在C#中判断某个类是否实现了某个接口

在C#中如何判断一个对象是不是是某个类型的实例

[c++] c++17 在编译期判断是否存在某个函数