Java — объектно-ориентированный, платформенно-независимый язык программирования. Ключевые особенности:
- Платформенная независимость (Write Once, Run Anywhere - WORA): Благодаря JVM (Java Virtual Machine), скомпилированный байт-код может выполняться на любой платформе, для которой существует JVM.
- Объектно-ориентированный: Весь Java основан на концепции объектов. Поддерживает инкапсуляцию, наследование и полиморфизм.
- Сильная типизация: Неявное преобразование типов ограничено, что помогает обнаружить ошибки на этапе компиляции.
- Автоматическое управление памятью: JVM включает сборщик мусора (Garbage Collector), который автоматически освобождает неиспользуемую память, избавляя разработчика от ручного управления ею.
- Многопоточность: Встроенная поддержка многопоточности позволяет писать приложения, выполняющие несколько задач одновременно.
- Безопасность: Java изначально разрабатывался с учетом безопасности. Есть встроенные механизмы, такие как менеджер безопасности (Security Manager), байт-код верификатор и отсутствие явных указателей.
- Высокая производительность: Хотя Java интерпретируется JVM, существует JIT (Just-In-Time) компилятор, который динамически компилирует часто используемый байт-код в машинный код, повышая производительность.
- Простой и знакомый синтаксис: Синтаксис Java похож на синтаксис C++, но без сложных или редко используемых возможностей, таких как множественное наследование реализации (поддерживается только множественное наследование интерфейсов) и явные указатели.
- Большая стандартная библиотека (Java API): Предоставляет широкий набор готовых классов и интерфейсов для решения типичных задач, таких как работа с коллекциями, сетью, вводом-выводом и т.д.
Пример простого класса:
java