回答
對於一般情況下,你可以使用instance?
斷言:
(instance? <class-or-interface> <object>)
引用文檔:
(instance? c x)
評估x和測試它是否是類 C的實例。返回true或false。
例如:
(instance? java.lang.String "test")
> true
(instance? java.io.Serializable "test")
> true
對於該問題的代碼,做這樣的事情:
(instance? package.of.IFn a)
或者,正如已指出了意見,爲非常具體的詢問是否a
是IFn
的一個實例,這將工作:
(ifn? a)
更好,使用'(ifn?a)'。 –
@DaveRay如何?我不知道一個接口會自動帶有一個測試謂詞,文檔中對此進行了解釋?它是否適用於Java接口,比如'Serializable'? –
不,每種類型都沒有泛型謂詞,但問題是如何測試'IFn',在這種情況下,我會認爲'ifn?'比使用'instance?'更習慣。同樣,我會使用'string?'而不是你的第一個例子。 –
- 1. 檢查類是否實現接口
- 2. TypeScript - 檢查類是否實現接口
- 3. 檢查對象是否實現接口
- 4. 如何檢查是否一個類實現一個接口
- 5. C#如何檢查一個類是否實現泛型接口?
- 6. 如何檢查Class.forName()是否實現了特定的接口?
- 7. 如何檢查方法參數是否實現多個接口
- 8. 檢查類是否在ActionScript 3.0中實現特定接口
- 9. 如何檢查接口對象是否實現另一個接口?
- 10. 檢查是否$ _POST變量是人口
- 11. 在Clojure中實現Java通用接口
- 12. PHP檢查是否實際類實現接口
- 13. 如何檢查變量是否在Prolog中實例化?
- 14. 如何檢查變量是否存在?
- 15. 如何檢查變量是否在python
- 16. 檢查變量實現接口而不編譯
- 17. 如何檢查一個類是否實現NRefactory中的接口方法
- 18. 如何在運行時檢查某個類是否實現了某個接口?
- 19. 如何檢查是否接口高達
- 20. 如何檢查協議是否實現?
- 21. 如何檢查是否字符串出現在變量的jQuery
- 22. 檢查值是否實現接口的說明。 Golang
- 23. 檢查父代片段是否實現接口
- 24. 如何檢查變量是否爲CFString?
- 25. 如何檢查變量是否有值?
- 26. 如何檢查變量是否定義?
- 27. 如何檢查變量是否爲空?
- 28. Clojure中是否存在惰性變量?
- 29. 如何檢查類類型,看看它是否實現了一個接口
- 30. 如何動態加載php代碼並檢查類是否實現接口
你爲什麼想要?這可能表明設計破損。 –