-3
我想檢查類名是否在編譯時有效。我當然可以導入類並獲得編譯錯誤,但是我想要的是能夠捕獲此錯誤。我該怎麼做,如果這不是一個好方法,我可以做些什麼其他替代方案?檢查類名是否在Java中有效
例如
import com.foo.classname;
public class Foo {
public String classProperties() {
if(classname) {//this is when class is found
ClassName className = new ClassName();
return className.toString();
}
else {//this is when class is not found
return getOtherProperty();
}
}
}
請不要發佈任何運行時如Class.forName
解決方案。
編輯:得到這麼多的負面反饋。我想解釋一下我的想法。
我的主要動機的想法是:
1)我看到這是使用反射爲此一些代碼。比如從JDK 7加載一個庫並使用該庫方法初始化一個String,並寫入其他內容(可能效率較低)來捕獲發生異常的塊。我想避免這種情況
2)錯誤和警告都是由編譯器創建的。如果我們能夠抑制一個警告,那麼我認爲可以抑制一個錯誤。
類名有效<=>代碼編譯與適當進口 – assylias
我知道,但就像我說的,我該怎麼辦時,它是無效的?然後代碼不會編譯,但我希望它編譯並想要處理這個。 –
如果該類存在,請導入該類或創建該類?你應該解釋你想達到什麼,因爲你的問題沒有多大意義...... – assylias