Java является строго типизированным языком. Это означает, что любая переменная и любое выражение имеют известный тип еще на момент компиляции. Такое строгое правило позволяет выявлять многие ошибки уже во время компиляции. Компилятор, найдя ошибку, указывает точную строку и причину ее возникновения, а динамические "баги" необходимо сначала выявить тестированием, а затем найти место в коде, которое их породило.
Все типы данных разделяются на две группы.Первую составляют 8 простых или примитивных (от английского primitive) типов данных. Они подразделяются на три подгруппы:
· целочисленные: byte, short, int, long, char;
· дробные: float, double;
· булевский: boolean.
Булевский тип представлен всего одним типом boolean, который может хранить всего два возможных значения - true и false. Величины именно этого типа получаются в результате операций сравнения.
Вторую группу составляют объектные или ссылочные (от английского reference) типы данных. Это все классы, интерфейсы и массивы.






