۴. مقایسه Java.use و Java.choose
برای اینکه بدانید چه زمانی از کدام استفاده کنید:
| ویژگی | Java.use | Java.choose |
|---|---|---|
| هدف | هوک کردن (Hooking) و تغییر منطق | اسکن حافظه (Scanning) و تعامل با اشیاء زنده |
| دسترسی استاتیک | بله (متدها و فیلدهای Static) | خیر (روی نمونهها کار میکند) |
| زمان اجرا | قبل یا حین ساخت شیء | بعد از ساخت شیء (وقتی شیء در حافظه است) |
| هزینه پرفورمنس | کم | زیاد (چون کل Heap را میگردد) |
هشدار پرفورمنس
استفاده از Java.choose در اپلیکیشنهای سنگین ممکن است چند ثانیه طول بکشد یا باعث کندی لحظهای شود. سعی کنید کدهای سنگین داخل onMatch ننویسید.