2016-05-24 30 views
0

我有一個叫做NewsDAO的類,它擴展抽象類AbstractDAO並將它作爲參數傳遞給類News如何知道通過作爲擴展抽象類parather通過的類

public class NewsDAO extends AbstractDAO<News> { 
} 

我需要的是知道,從叫***DAO所有階級,階級作爲paramether傳遞給AbstractDAO類型開始的方法。

我掙扎了一段時間,但我沒有找到方法。

謝謝

+0

我可以說反射可以做到這一點,但我不確定,你可以發佈你所有的班級代碼 –

回答

1

你可以讓你通過這種方式擴展的類的全名:

String fullExtendedClassName = this.getClass().getGenericSuperclass() 
      .toString(); 

然後你只需要格式化字符串,並獲得「<」之間的信息和'>'

String extendedClassName = fullExtendedClassName.substring(fullExtendedClassName. 
indexOf("<") + 1, fullExtendedClassName.indexOf(">")); 

希望它可以幫助你。

+1

getActualTypeArguments是你的朋友,不是嗎? –