Hasor ApiBinder轉(zhuǎn)換

2018-10-05 10:55 更新

在上一個小節(jié)我們對 ApiBinder 實現(xiàn)了一個自定義的擴展,并且使用了它。那么下面將會更加詳細的講解,ApiBinder的轉(zhuǎn)換機制。讓我們回顧一下代碼:

TestBinder myBinder = (TestBinder)apiBinder;


在上一個例子中我們使用的強制類型轉(zhuǎn)換來得到我們的自定義 ApiBinder,倘若我們的擴展模塊沒有部署進Hasor。那么這個代碼就會發(fā)生類型轉(zhuǎn)換異常。

為了避免此類問題,在強制類型轉(zhuǎn)換之前您應(yīng)該先進行一下類型判斷,例如:

if (apibindr instanceof TestBinder){
   ...
}


除此之外,您還可以這樣來避免強制類型轉(zhuǎn)換:

TestBinder myBinder = apiBinder.tryCast(TestBinder.class);


如果 ApiBinder 的擴展模塊部署到了 Hasor 中那么 tryCast 就會正確返回給您一個 TestBinder。如果沒有正確配置,它會返回一個 null。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號