در حقیقت قابلیت Invokedynamic به ساختار بایت کد های JVM اضافه شده است و با فراهم کردن یک قابلیت فراخوانی متد انعطافپذیر، JVM را برای پیاده سازی زبان های داینامیک برروی آن آماده تر کرده است. زبان برنامه نویسی جاوا یک زبان ار نوع داده استاتیک است بدین معنی که وقتی یک فراخوانی متد انجام می شود، در زمان کامپایل باید نام متد معتبر و از قبل مشخص باید، پارامتر ها و مقدار بازگشتی متد نیز بهمین صورت باشد.
بایت کد های Invokedynamic این وضعیت رو تغییر داده اند، بدین صورت که امکان late binding را به فراخوانی های متد در JVM اضافه کرده اند. در این حالت مشخصات متد فراخوانی شده تا زمان انجام فراخوانی در زمان اجرا می تواند نامشخص باشد.
برای مثال با استفاده از بایت کد های Invokedynamic می توان بایت کد هایی تولید کرد که در آنها متد هایی که وجود ندارند فراخوانی می شوند!
در این لینک با مثال این قابلیت جدید JDK 7 مفصلتر توضیح داده شده است.