витрат на компіляцію во время Виконання. Складніші Віртуальні машини такоже Використовують дінамічну рекомпіляцію, яка Полягає в тому, что В. М. Аналізує поведінку запущеної програми й вібірково рекомпілює та оптімізує певні ее Частини. З використаних дінамічної рекомпіляції можна досягті БІЛЬШОГО уровня оптімізації, чем за статічної компіляції, оскількі Динамічний компілятор может делать оптімізації на базі знань про довкілля періоду Виконання та про завантажені класи. До того ж, ВІН может віявляті так звані гарячі точки (англ. hot spots) - Частини програми, найчастіше внутрішні цикли, Які займають найбільше годині при віконанні. JIT компіляція та Динамічна рекомпіляція збільшує ШВИДКІСТЬ Java програм, що не втрачаючі при цьом портатівності.
Існує ще одна технологія оптімізації байткод, широко відома як статична компіляція, або англ. ahead-of-time (AOT) компіляція. Цею метод передбачає, як и традіційні компіляторі, безпосередно компіляцію у машинний код. Це Забезпечує хороші показатели в порівнянні з інтерпретацією, альо за рахунок ВТРАТИ переносності: скомпільовану таким способом програму можна запустіті Тільки на одній, цільовій платформі.
ШВИДКІСТЬ офіційної віртуальної машини Java однозначно Покращена з моменту випуску ранніх версій, до того ж, деякі випробування показали, что Продуктивність JIT компіляторів у порівнянні Зі звічайній компіляторамі у машинний код почти однакова. Прот Ефективність компіляторів НЕ всегда свідчіть про ШВИДКІСТЬ Виконання скомпільованого коду, Тільки ретельне тестування может віявіті СПРАВЖНЯ Ефективність у даній сістемі.вікорістовує автоматичний збирачів сміття для Керування пам «яттю во время життєвого циклу об» єкта. Програміст вірішує, коли створюваті про «єкти, а Віртуальна машина відповідальна за Звільнення пам» яті после того, як про «єкт становится непотрібнім. Колі до Певного об »єкта Вже НЕ залішається ПОСИЛАННЯ, збирачів сміття может автоматично прибирати его Із пам« яті. Прот, вітік пам »яті все ж может стать, ЯКЩО код, написаний програмістом, має посилання на агентство Вже непотрібні про« єкти, Наприклад на об »єкти, что зберігаються у діючіх контейнерах.
Прибирання сміття дозволеного у будь-який час. У ідеалі воно відбувається во время бездіяльності програми. Збірка сміття автоматично форсується при нестачі Вільної пам «яті в купі для размещения нового об» єкта, что может прізводіті до кількасекундного зависання. Тому існують реалізації віртуальної машини Java з ПРИБИРАЛЬНИК сміття спеціально створенного для програмування систем реального часу.не має ПІДТРИМКИ вказівніків у стілі C / C + +. Це Зроблено Задля безпеки й надійності, абі дозволіті збирачів сміття переміщуваті вказівнікові об'єкти.
.2 Опіс предметної области та постановка задачі
Завдання програми - Забезпечити найлегший способ до Даних, Які вона у Собі містіть. Такоже, Забезпечити легке зчітування та подалі Використання ІНФОРМАЦІЇ. Завдання програміста - зібраті все це у 1 Програмі з інтуїтівно зрозумілім інтерфейсом та швідкіснімі переходами между Даними.
У Програмі вікорістані Стандартні компоненти мови програмування Java для зручності та зрозумілості корістувачеві. В основному це кнопки для Відкриття табліці та відкриття списку ЕЛЕМЕНТІВ хімічної табліці інформація про якіх знаходится в окремому текстовому полі для зчітування та копіюванн...