
- •Jdk и виртуальная машина java
- •Примитивные типы
- •Классы java. Понятие объекта.
- •Основные принципы ооп
- •Передача параметров по значению и по ссылке
- •Типы комментариев в java.
- •Модификаторы доступа
- •Наследование
- •Интерфейсы
- •Абстрактные классы
- •Константы
- •Работа со строками
- •Коллекции
- •Утилиты
- •Swing компоненты
- •Менеджер расположения
- •Система обработки событий
- •Потоки ввода и вывода
- •Сериализация
- •Обработка исключительных ситуаций
- •Вложенные классы
Jdk и виртуальная машина java
Технология Java — это более чем язык программирования, это платформа. Платформа — это аппаратное и (или) программное окружение, в котором работают приложения. Язык Java необычен тем, что программа одновременно и компилируется и интерпретируется.
Сначала исходный текст программы компилируется в промежуточный код — (байт-код), который является платформонезависимым и выполняется интерпретатором платформы Java. Компиляция выполняется один раз, при создании программы, а интерпретация — каждый раз при ее выполнении. На первой стадии использование компилятора позволяет выполнить проверку корректности и оптимизацию кода, на второй стадии использование интерпретатора позволяет провести анализ безопасности и трансляцию операций, специфических для конкретного окружения (различных аппаратных платформ и операционных систем).
Байт-код является аналогом машинных кодов реальных процессоров для стек-ориентированной виртуальной машины Java. Вообще говоря, Java-машина является виртуальной в том смысле, что она не существует в виде реальных микросхем и других устройств, а представляет собой программный эмулятор, выполняющийся на какой-либо традиционной аппаратной платформе. Как и любая вычислительная машина, она имеет набор инструкций и использует различные области памяти. Формат команд Java-машины довольно прост (обычно команды не имеют операндов и занимают один байт), по этой причине программы, подготовленные для выполнения на Java-машине, часто называют байт-кодами.
В настоящее время пакеты разработчика Java (Java Development Kit, JDK), включающие в себя компилятор, виртуальную машину, прочий инструментарий и исчерпывающую документацию, реализованы для всех основных платформ, включая Windows, Linux, Solaris, MacOS. А клиентские виртуальные машины встраиваются даже в электронные органайзеры и мобильные телефоны.
Как уже было сказано выше, платформа — это аппаратное и программное окружение, в котором выполняются приложения. Большинство платформ — MacOS, Windows, Solaris и т.д. — являются совокупностью и программного, и аппаратного обеспечения. В отличие от них, платформа Java является чисто программной и состоит из двух частей:
виртуальной машины Java;
интерфейса прикладного программирования Java (Java API).
Платформа и интерфейс прикладного программирования Java изолируют Java-программу от аппаратного обеспечения, избавляя тем самым от проблем совместимости и предоставляя исключительно богатые возможности.
Примитивные типы
Булевский (логический) тип
boolean – допускает хранение значений true или false
Целочисленные типы
char – 16-битовый символ Unicode
byte – 8-битовое целое число со знаком
short – 16-битовое целое число со знаком
int – 32-битовое целое число со знаком
long – 64-битовое целое число со знаком
Целые типы различаются по размеру отведенной для них памяти. Целочисленные константы могут задаваться в программе одним из трех способов: в виде десятичных, шестнадцатеричных и восьмеричных значений. По умолчанию все числа интерпретируются как десятичные и относятся к типу int
Вещественные типы
float – 32-битовое число с плавающей точкой (IEEE 754-1985)
double – 64-битовое число с плавающей точкой (IEEE 754-1985)
Переменные с плавающей точкой могут хранить не только численные значения, но и любой из особо определенных флагов (состоянии): отрицательная бесконечность, отрицательный нуль, положительная бесконечность, положительный нуль и «отсутствие числа» (not-a-number, NaN).
Все константы с плавающей точкой подразумеваются принадлежащими к типу double. Чтобы задать число типа float, необходимо добавить в его конец символ "f" или символ "F".
Циклы
Циклы нужны для выполнения одних и тех же действий несколько раз. В Java можно использовать три вида циклов:for, while, do-while.
Цикл for выполняет инициализацию перед первой итерацией. Затем он выполняет сравнение, а в конце каждой итерации выполняется, некоторого рода, “шагание”. Форма цикла for следующая:
for(инициализация; логическое выражение; шаг)
инструкция
public class ListCharacters {
public static void main(String[] args) {
for( char c = 0; c < 128; c++)
System.out.println(
"value: " + (int)c +
" character: " + c);
}}
Форма цикла while следующая:
while(Логическое выражение)
инструкция
Логическое выражение вычисляется один раз в начале цикла, а затем каждый раз перед каждой будущей итерацией для инструкции.
public class WhileTest {
public static void main(String[] args) {
double r = 0;
while(r < 0.99d) {
r = Math.random();
System.out.println(r);
}}}
do-while
do
инструкция
while(Логическое выражение);
Главное отличие между while и do-while в том, что инструкция в цикле do-while всегда выполняется не менее одного раза, даже если вычисленное выражение ложное с самого начала. В цикле while, если условие ложное в первый раз, инструкция никогда не выполнится. На практике do-while используется реже, чем while.