Получить имя интерфейса из класса реализации

пример :

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

Я хочу получить имя интерфейса из list ссылочной переменной. Есть ли способ сделать это?

2 ответов


используя отражение, вы можете вызвать Class.getInterfaces() метод, который возвращает Array of Interfaces что ваш класс реализует.

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

чтобы получить только имя

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

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