X類使用反射方法來檢查Y類是否有特定的方法。 Y類有什麼方法可以找出X類方法正在檢查的方法的細節?一個班級是否有可能瞭解自己是否使用了反射?
3
A
回答
5
在類型定義上執行反射不是實例。
如果需要,實例用於檢索值,並且只是值的存儲位置,類型定義是此存儲區域的映射。
因此,無法指示是否在實例上使用了Reflection ......可以確定最近是否在Type上執行了反射(在最後一次垃圾收集器運行之前,思考反射Reflection),但是切線最好不要在這裏進一步探討,因爲它仍然不能解決你設定的問題。
當CLR執行反射時,它會這樣做,不會留下任何反射已執行的痕跡,從而節省與執行反射相關的內存成本。
不可能在不修改CLR的情況下留下任何這樣的指示。
解決此問題的另一種方法是提供一個反射緩存,它將類型信息存儲在Dictionary中,這將允許您確定是否反映了特定的類型,然後使用Dictionary中的信息,而不是再次進行反射。
3
相關問題
- 1. 是否有可能在同一個班級有兩把鑰匙?
- 2. 地圖的每個區域是否都有自己的班級?
- 3. 是否可能使用反射getMethods?
- 4. 從一個班級到另一個班級是否安全?
- 5. Linux是否使用了一些優先級反轉解決方案?
- 6. 自動檢查是否違反了android:minSdkVersion
- 7. CallerMemberNameAttribute是否使用反射
- 8. 是否有可能有優先級反轉有兩個進程?
- 9. 是否有可能判斷用戶是否瀏覽了頁面的一部分?
- 10. 是否有可能使用linq反射到實體?
- 11. 是否有可能直接在XAML中使用反射
- 12. 是否有可能忽略了一個Apache proxy'd證書
- 13. 是否有可能添加一個UIBarButtonItem除了UISegmentedControl?
- 14. 瀏覽器是否瞭解自己的視口?
- 15. 是否有可能檢查是否使用jQuery加載了背景圖片?
- 16. 確定一個C#方法是否使用了反射關鍵字'覆蓋'
- 17. 訪問您自己班級的成員:是否使用(自動)屬性?
- 18. 的Rails:瞭解是否有IP是一個IP範圍
- 19. 瞭解Numpy是否使用BLAS庫
- 20. 是否可以判斷用戶是否使用docopt設置了一個選項?
- 21. 是否有可能使用python製作自己的數據包?
- 22. 是否有可能增加一個級聯刪除使用FluentMigrator
- 23. 是否有反向映射功能?
- 24. CLR是否瞭解事件?
- 25. 是否有可能檢查一個字段是否實現了具有自定義派生的特徵?
- 26. 是否有一個功能,用於瞭解用戶是否是WP/woocommerce中的'shop_manager'
- 27. 如何查看一個班級是否實施了與Roslyn的接口
- 28. 我是否可以在班級上班並設置一些值?
- 29. ruby:自己從一個班級變爲另一個班級
- 30. 瞭解設備是否具有軟鍵
嗯。 Y類應該「意識到」自己的方法。你到底在問什麼? – spender 2013-03-11 14:32:41
聽起來像太多的反思。關於反思的思考。請解釋你需要什麼。 – 2013-03-11 14:33:45
總之:沒有。[15個字符] – 2013-03-11 14:33:52