我有很多類UNO,HAV,MAS,KOS 我想創建一個工廠模式。Java工廠模式 - 動態加載類
validator.load("UNO").validate();
我需要動態加載類到驗證器類中並返回一個實例。
(動態設置類的名稱並返回實例)
我的問題是:如果我有不兼容的類型,如何返回類的實例?
我不知道在返回類型的方法中寫什麼。
Validator CLASS中的主要問題。
public SegmentAbstract load(String str) {
AND
return SegmentAbsClass.forName(identify);
Main類
try{
validator.load("UNO").validate();
}catch(Exception e){
System.out.print("No class ");
}
抽象類(SegmentAbstract)
public abstract class SegmentAbstract {
public abstract Boolean validate();
}
類UNO
public class UNA extends SegmentAbstract{
public Boolean validate() {
System.out.print("UNO!!");
return true;
}
}
類驗證
public class Validator {
public SegmentAbstract load(String str) {
String identify = str.substring(0, 3);
try {
return SegmentAbsClass.forName(identify);
}
catch(Exception e) {
return this;
}
}
}
你是否必須總是返回一個'SegmentAbstract'類的新副本? – hellectronic
@Dezigo只要你的類擴展'SegementAbstract',它們不是不兼容的,因爲它們都實現了'validate()'。究竟是什麼問題? – stacker
是的!總是一個新的副本! – Dezigo