Язык программирования джава

.

Автор: Дегтярев Михаил.

Язык программирования Java (Ява).

Язык программирования Java является объектно-ориентированным языком программирования, который был создан Джеймсом Гослингом (James Gosling) и другими инженерами в компании Sun Microsystems. Он был разработана в 1991 году, как часть проекта "Green Project", и официально объявлен 23 мая 1995 года, в SunWorld, а выпущен в ноябре. Java была изначально разработана как замена для C++ (хотя набор функций больше похожа на Objective C) и известный как Дуб (в честь дерева за пределами офиса Гослинга).

Подробнее об истории Java можно найти в статье о платформе Java, которая включает в себя язык, Java Virtual Machine, и Java API. Java является собственностью компании Sun Microsystems; Java является торговой маркой компании Sun Microsystems.

Обзор

Существовали четыре основных цели при создании языка Java:

  • Объектно-ориентированный язык.
  • Независим от целевой платформы (более или менее).
  • Должен содержать объекты и библиотеки для работы в сети.
  • Он предназначен для выполнения кода из удаленных источников надежно.

Объектная ориентация
Первая характеристика, объектно-ориентированный подход («ОО»), относится к методу программирования для чайников и дизайну язык. Основная идея ОО заключается в разработке программного обеспечения все это «вещи» (то есть объекты), которыми можно манипулировать, а не действия, которые нужно выполнять. Это основано на том, что первое (вещи) изменяются реже и радикальнее, чем действия, что делает такие объекты (на самом деле вещи, содержащие данные) более стабильной основу для разработки программного обеспечения. Целью является, делать большие проекты программного обеспечения легко управляемыми, таким образом, можно добиться повышения качества и сокращения числа неудачных проектов программирования для начинающих.

Независимость от платформы

Вторая характеристика, независимость от платформы, означает, что программы, написанные на языке Java должны работать аналогично на различном оборудовании. Программист должен быть в состоянии написать программу один раз и запустить её в любом месте. Это достигается путем компиляции Java-кода "наполовину" в байт-код — упрощенные машинные команды, которым соответствуют стандартный набор реальных команд процессору. Этот код затем необходимо запустить на виртуальной машине, то есть программе, написанойя на машинном коде для взаимодействия с аппаратными средствами, которая переводит байт-код Java в пригодный для использования код на конкретном оборудовании.

Язык программирования Java

Кроме того, предоставляются стандартизированные библиотеки для обеспечения доступа к особенностям архитектуры конкретной машины (например, графики и сетей) единым способам. Язык Java также включает поддержку для многопоточных программ — жизненно важная необходимость для многих сетевых приложений и основа программирования.

Первая реализация языка использовали интерпретирующую виртуальную машину для достижения мобильности, и многие реализации используют такой подходдо сих пор. Однако, эти реализации создают программы, которые выполняются медленнее, чем полностью скомпилированные программы, созданные типичным компилятором С++ и немного позднее появившимися компиляторами языка Java, поэтому язык страдает от приобретенной репутации "производтиель медленных программ". В более поздних реализациях Java VM создает программы, которые работают намного быстрее, используя несколько методов.

Первый метод — это просто компиляция непосредственно в машинный код, как традиционные компилятор, пропуская этап превращения программы в байт-код целиком. Этим достигается большая производительность, но за счет утраты мобильности и переносимости программ. Другой метод, "В поцессе исполнения" или "JIT", компилирует байт-код Java в машинный код во время выполнения программы. Более сложные виртуальные машины даже использовали динамические перекомпиляции, в которой VJM может анализировать поведение работы программы и выборочно перекомпилировать и оптимизировать критические части программы. Обе эти технологии позволяют программе воспользоваться скоростью машинного код без потери мобильности.

Портативность является технически трудной целью для достижение и успех Java вдостижении этой цели является предметом споров. Хотя на самом деле можно писать программы для платформы Java, которые ведут себя одинаково на многих платформах , но все же большее количество доступных платформ не выполняет программу как ожидалось, а выдает небольшое количество ошибок или несоответствий, что привело к появлению пародии на известный лозунг компании Sun "Написал один раз, работает везде" в другой "Написал один раз, отлаживал везде ".

Независимый от платформы Java, однако, стал очень успешным для серверов приложений, таких как веб-сервисы, сервлеты, или Enterprise Java Beans.

Безопасное выполнение удаленного кода

Платформа Java была одной из первых систем для обеспечения широкой поддержки для выполнения кода из удаленных источников. Апплет может р
аботать в браузере пользователя, в процессе выполнения кода может загрузить маленький кусочек чужого кода с удаленного сервера HTTP и выполнить. Удаленное выполнения кода происходит в весьма ограниченной "песочнице", которая защищает пользователя от некорректного или вредоносного кода. Издатели таких приложений могут подать заявку на сертификат, который они могли бы использовать для цифровой подписи апплетов как "безопасный", что дает им разрешение, чтобы вырваться из "песочницы" и получить доступ к локальной файловой системе и сети, конечно, предположительно этот процесс происходит под контролем пользователя.

Оценка

По мнению большинства людей, Java технология достаточно хорошо подходит для всех этих целей. Язык, однако, не без недостатков.

Java как правило, более высокого уровня, чем аналогичные языки (такие как C++), что означает, что языку Java не хватает функций, таких как аппаратные или для работы с конкретными типами данных или, например, низкоуровневыме указатели на произвольные ячейки памяти. Хотя этими функциями часто злоупотребляют или используются программистами неправильно, они также являются мощными инструментами. Однако, технология Java включает Java Native Interface (JNI), способ вызова машинного кода из кода на языке Java. С JNI можно использовать эти возможности.

Некоторые программисты также жалуются на отсутствие множественного наследования, мощный инструмент нескольких объектно-ориентированных языков программирования, например, С++. Язык Java отделяет наследование типа и реализации, что позволяет наследование несколько определений типа через интерфейсы, но только единичное наследование типа данных с помощью иерархии классов. Это позволяет использовать большинство из преимуществ множественного наследования, избегая при этом многие из его опасностей. Кроме того, с помощью конкретных классов, абстрактных классов, а также интерфейсы, программист на языке Java имеет возможность выбора полной, частичной или нулевой реализации для типа объекта, он сам определяет, что обеспечивает максимальную полезность в разработке приложений.

Есть люди, которые считают, что для определенных проектов, объектно-ориентированный подход делает работу сложнее, а для других проще. Эта жалоба не является уникальной для языка Java, потому что она распространяется и на другие объектно-ориентированные языки.

Пример программы "привет мир" на языке Java:

public class HelloWorld { public static void main(String[] args) { System.out.println(«Hello world!»); } }

Управляющие инструкции:
Циклы
while (Boolean expression) { statement(s) } do { statement(s) } while (Boolean expression); for (initialisation ; termination condition ; incrementing expr) { statement(s) }
Условные уператоры
if (Boolean expression) { statement(s) } if (Boolean expression) { statement(s) } else { statement(s) }
Выбор
if (Boolean expression) { statement(s) } else if (Boolean expression) { statement(s) } else if (Boolean expression) { statement(s) } else { statement(s) } switch (integer expression) { case constant integer expr: statement(s) break; … default: statement(s) break; }
Отлов ошибок
try { statement(s) } catch (exception type) { statement(s) } catch (exception type) { statement(s) } finally { statement(s) }
Базовые типы данных

Тип данных Описание
byte 8-bit целое со знаком
short 16-bit целое со знаком
int 32-bit целое со знаком
long 64-bit целое со знаком
float 32-bit весщественное число с одинарной точностью
double 64-bit весщественное число с двойной точностью
char 16-bit одиночный символ Unicode
boolean true или false (правда или ложь)

Символы можно хранить в 16-битный Unicode кодировке. Такой символ может содержать все обычные символы, но также включает в себя наборы символов для многих других языков, кроме английского, в том числе греческий, кириллицу, китайский, арабский и т.д. Java-программы могут использовать все эти символы, хотя большинство редакторов не имеют встроенной поддержки для наборов символов, которые отличаются от обычных символов ASCII. Массивы и строки не примитивные типы: они являются объектами.

Если возник вопрос, то вы можете получить ответ: форум программистов

Введение в Java

Язык программирования Java

Последнее обновление: 12.04.2018

На сегодняшний момент язык Java является одним из самых распространенных и популярных языков программирования. Первая версия языка появилась еще в 1996 году в недрах компании Sun Microsystems, впоследствии поглощенной компанией Oracle. Java задумывался как универсальный язык программирования, который можно применять для различного рода задач.

Язык программирования Java (Ява).

И к настоящему времени язык Java проделал большой путь, было издано множество различных версий. Текущей версией является Java 10, которая вышла в марте 2018 года. А Java превратилась из просто универсального языка в целую платформу и экосистему, которая объединяет различные технологии, используемые в целого ряда задач: от создания десктопных приложений до написания крупных веб-порталов и сервисов. Кроме того, язык Java активно применяется для создания программного обеспечения для целого ряда устройств: обычных ПК, планшетов, смартфонов и мобильных телефонов и даже бытовой техники. Достаточно вспомнить популярность мобильной ОС Android, большинство программ для которой пишутся именно на Java.

Особенности Java

Ключевой особенностью языка Java является то, что его код сначала транслируется в специальный байт-код, независимый от платформы. А затем этот байт-код выполняется виртуальной машиной JVM (Java Virtual Machine). В этом плане Java отличается от стандартных интерпретируемых языков как PHP или Perl, код которых сразу же выполняется интерпретатором. В то же время Java не является и чисто компилируемым языком, как С или С++.

Подобная архитектура обеспечивает кроссплатформенность и аппаратную переносимость программ на Java, благодаря чему подобные программы без перекомпиляции могут выполняться на различных платформах — Windows, Linux, Mac OS и т.д. Для каждой из платформ может быть своя реализация виртуальной машины JVM, но каждая из них может выполнять один и тот же код.

Java является языком с Си-подобным синтаксисом и близок в этом отношении к C/C++ и C#. Поэтому, если вы знакомы с одним из этих языков, то овладеть Java будет легче.

Еще одной ключевой особенностью Java является то, что она поддерживает автоматическую сборку мусора. А это значит, что вам не надо освобождать вручную память от ранее использовавшихся объектов, как в С++, так как сборщик мусора это сделает автоматически за вас.

Java является объектно-ориентированным языком. Он поддерживает полиморфизм, наследование, статическую типизацию. Объектно-ориентированный подход позволяет решить задачи по построению крупных, но в тоже время гибких, масштабируемых и расширяемых приложений.

Установка Java

Для работы программ на языке Java на целевой машине должна быть установлена JRE (Java Runtime Environment). JRE представляет минимальную реализацию виртуальной машины, а также библиотеку классов. Поэтому, если мы хотим запускать программы, то нам надо установить JRE. Для каждой конкретной платформы имеется своя версия JRE.

Однако, так как мы собираемся не только запускать программы, но и разрабатывать их, нам потребуется специальный комплект для разработки JDK (Java Development Kit). JDK уже содержит JRE, а также включает ряд дополнительных программ и утилит, в частности компилятор Java.

Загрузить и установить соответствующую версию JDK (либо отдельно JRE без JDK) можно с с официального сайта Oracle: http://www.oracle.com/technetwork/java/javase/downloads/index.html

Итак, с выше упомянутого адреса загрузим программу установки JDK для последней версии Java.

Затем нас перебросит на страницу, где надо выбрать версию для целевой ОС — Windows, MacOS или Linux:

После загрузки запустим программу установки:

Нажмем на кнопку Next. И далее нам отобразится набор устанавливаемых компонентов, и также мы увидим, в какую папку буде производиться установка:

Оставим все опции по умолчанию и нажмем на Next для выполнения установки.

Далее в процессе установки JDK откроется окно для настройки установки JRE. В частности, здесь мы можем изменить путь, по которому устанавливается jre:

Оставим настройки по умолчанию и нажмем на кнопку Next>. После завершения установки JDK мы увидим вот такое окно:

Итак, после установки JDK создадим первую программу на Java.

СодержаниеВперед

Учимся программировать на Java
(практические занятия)


Дайте себе шанс

Шаг за шагом, очень постепенно мы введем вас в волнительный и прекрасный мир разработки программного обеспечения. К концу занятий вы не станете настоящим гуру – не в наших правилах обещать того, что мы выполнить не в силах. Но вы почувствуете вкус программирования, увидите как создаются программы, научитесь пользоваться основными программными конструкциями и будете подготовлены к дальнейшему самостоятельному плаванию.

В какую сторону вы поплывете потом – решать вам. Может быть, вас привлекут базы данных, может быть – графические интерфейсы, может быть – разработка игр, может быть – web-программирование, может быть – трансляция языков и обработка текста, может быть – сложные алгоритмы манипулирования данными…

Читать полностью … 24.02.2014


Занятие 0. Давайте знакомиться

Вы хотите научиться программировать? Разумная мысль: лишним такой навык, скорее всего, не будет. Правда, для этого придется немножко потрудиться. Предлагаемый вашему вниманию цикл занятий, который позволит в обозримые сроки не только получить представление о том, что такое программирование, но и научиться создавать программы нетривиального назначения и размера.

Существует несколько способов обучения программированию.

Первый и, пожалуй, самый распространенный – по книгам…

Занятие 0 полностью … 31.12.2013

Занятие 1. Запасаемся инструментами (текстовый редактор)

Итак, будем считать, что в вашем распоряжении есть работающий компьютер с достаточным объемом оперативной памяти (1 Гб, а лучше больше), наличием не менее 1 Гб свободного дискового пространства и выходом в Internet.

Список того, что нам потребуется, невелик:

  • Java SE Development Kit (обычно используется сокращение JDK);
  • текстовый редактор;
  • сервер базы данных

Занятие 1 полностью … 06.01.2014

Занятие 2. Запасаемся инструментами (JDK)

Итак, текстовый редактор уже установлен и мы надеемся, что вы не тратили времени даром и познакомились с ним. Теперь поговорим о Java SE Development Kit (или короче JDK). И тут без небольшого введения не обойтись.

Программист набирает (пишет, печатает, вводит) программу в текстовом редакторе. Программа в текстовом редакторе выглядит как самый обычный текст. Такой текст называется исходным кодом. Исходный код формируется на специальном искусственном языке – языке программирования. Языков программирования существует великое множество, но нам будет нужен только один – Java.

Занятие 2 полностью … 13.01.2014

Занятие 3. Приступаем …

Возможно, вас «мучает» вопрос почему в качестве языка программирования мы выбрали именно Java. Этому есть множество причин, но мы не будем здесь на этом останавливаться и описывать все привлекательные черты Java, тем более, что информации об этом предостаточно (посмотрите, например, информацию на сайте http://www.java.com/ru/). Упомянем лишь, что Java является основным языком программирования в популярнейшей операционной системе для смартфонов и планшетов Android.

Введение в Java

Мы же сразу приступим.

Занятие 3 полностью … 20.01.2014

Занятие 4. Начинаем вникать (начало)

На прошлом занятии мы создали, откомпилировали и запустили на исполнение очень простую программу на Java. Однако, рассмотрение того, как эта программа «устроена» мы оставили на потом. Сейчас мы этим и займемся.

Мы должны сразу вас предупредить: материал этого и следующего занятий будет преимущественно теоретическим. Нам придет не столько программировать, сколько думать, но способность к этому – необходимая часть работы программиста, так что приготовьтесь к интеллектуальной работе.

Занятие 4 полностью … 27.01.2014

Занятие 5. Начинаем вникать (окончание)

Это второе из теоретических занятий. Оно будет посвящено только одному, но очень важному вопросу – порождению (вместо порождения чаще говорят о создании) экземпляров (или объектов) класса.

Для этого чуточку изменим нашу первую программу. Откройте FAR, перейдите в каталог JavaLessons, найдите файл MoneyForNothig.java и нажмите кл
авишу F4. Файл откроется в режиме редактирования. Измените файл следующим образом:

1. public class MoneyForNothing {

2.     // Конструктор

3.     public MoneyForNothing () {

4.         System.out.println («Java programming is cool!!!»);

5.     }

6.     public static void main (String [] args) {

7.         MoneyForNothing mfn = new MoneyForNothing ();

8.     }

9. }

Занятие 5 полностью … 03.02.2014

Занятие 6. Графические интерфейсы: первое окно

Мы догадываемся, что порядком утомили вас, рассказывая все время о программах вывода текстовых сообщений на консоль. На этом занятии эта «унылая» череда примеров будет, наконец, прервана: мы покажем как на Java создаются окна и вы убедитесь, что это простая задача.

Вот наш код (обсуждать его мы начнем на следующем занятии, т.к. в нем много-много особенностей, знать которые действительно нужно):

import java.awt.*;

import javax.swing.*;

 

public class MoneyForNothing extends JFrame {

    // Конструктор

    public MoneyForNothing () {

        setTitle («Добро пожаловать в Money for Nothing»);

        setSize (new Dimension (600, 400));

        setDefaultCloseOperation (EXIT_ON_CLOSE);

        setVisible (true);

    }

 

    public static void main (String [] args) {

        MoneyForNothing mfn = new MoneyForNothing ();

    }

}

Занятие 6 полностью … 10.02.2014

Занятие 7. Графические интерфейсы: импорт пакетов, наследование

Предуведомление

В отличие от предыдущих занятий, где мы в основном действовали по принципу «делай как я» и рассказывали о концепциях и технических деталях что называется «на пальцах», стиль изложения, начиная с этого занятия несколько изменится и будет более техническим.

Этого, увы, не избежать, т.к. рано или поздно мы должны будем прийти к такой точке, после которой подход «на пальцах» становится уже несостоятельным. Сейчас такой момент наступает. Так что давайте соберемся с духом, засучим рукава и приступим.

Занятие 7 полностью … 17.02.2014

Занятие 8. Схема «Модель/Вид/Контроллер» (MVC)

Замечание

Хотим вас сразу предупредить, что нижеследующий материал несколько отличается от уже привычного нам материала предыдущих занятий. Мы поговорим о механизмах без которых невозможно создание полноценных графических интерфейсов. В принципе, вы можете пока просмотреть это занятие «по диагонали» и вернуться к нему позже (вы сами поймете когда придет время).

На предыдущем занятии ( Занятие 7. Графические интерфейсы: импорт пакетов, наследование ) мы начали обсуждение внутренней «кухни» графических интерфейсов. Если помните, мы немало времени уделили тяжеловесным (heavyweight) и легковесным (lightweight) компонентам. О тяжеловесных компонентах и о том, как они взаимодействуют с операционной системой мы уже кое-что рассказывали ранее и возвращаться к ним больше не будем; поговорим о легковесных компонентах.

Занятие 8 полностью … 24.02.2014

Занятие 9. Диалоговые окна (начало)

Шаг за шагом мы потихоньку «подбираемся» к очередной и чрезвычайно важной теме – обработке событий. Но для того, чтобы эти самые события не показались вам возникшими невесть откуда и зачем, нам надо обсудить еще один важный компонент графических интерфейсов – диалоговые окна. Это тем более уместно, что диалоговые окна – неотъемлемый элемент графического пользовательского интерфейса любого мало-мальски сложного приложения. Эти окна присутствуют повсеместно и должны быть вам хорошо знакомы. Например, диалоговыми являются окно выбора принтера, окно параметров, окно для поиска и замены текста и т.д.

Основные отличия диалогового окна (ему, как нетрудно догадаться, в библиотеке swing соответствует класс JDialog) от уже знакомого нам обычного окна (JFrame) два:

Занятие 9 полностью … 03.03.2014

 

Автор: Alex Tuesday

.

.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *