从实现类获取接口名称(Get the interface name from the impleme

2019-07-19 01:17发布

例如:

List<String> list = new ArrayList<String>();
//This would give me the class name for the list reference variable.
list.getClass().getSimpleName();

我想从接口名list的引用变量。 是否有任何可能的方式来做到这一点?

Answer 1:

使用反射,你可以调用Class.getInterfaces()方法返回一个Array of Interfaces ,你的类实现。

System.out.println(list.getClass().getInterfaces()[0]);

为了得到公正的名字

System.out.println(list.getClass().getInterfaces()[0].getSimpleName);


Answer 2:

Class  aClass = ... //obtain Class object. 
Class[] interfaces = aClass.getInterfaces();


文章来源: Get the interface name from the implementation class