我基於命令行參數,這樣加載數據庫驅動程序:如何在實例化之前參數化泛型類?
Class driverClass = null;
try {
driverClass = Class.forName(dbDriver);
catch(ClassNotFoundException e) {
// Print error message here
}
後來我打電話driverClass.newInstance()
。
如何避免消息
類是原始類型。引用泛型類型
Class<T>
應該是參數
如果我嘗試Class<Driver>
的部分的Class.forName抱怨類型不匹配:
類型不匹配:不能從
Class<capture#1-of ?>
轉換爲Class<Driver>
這很奇怪,我如何正確地在第一行參數化類?
的'class'不是由通用放慢參數的影響,所以你做調用'forName()'時不需要它。你調用'newInstance()'的時候嘗試過參數化嗎? – Turing85
爲什麼你首先使用'forName'?這不是加載數據庫驅動程序的正確方法。 –
@LewBloch好吧,我認爲這是正確的做法,我該如何做得更好? – Beginner