Java - это объектно-ориентированный высокоуровневый ЯП общего назначения со строгой типизацией данных, программа которого транслируется в байт-код и далее исполняется на виртуальной машине, за счет чего обеспечивается кросс-платформенность.
Представление данных в памяти компьютера и базовые типы Java.
1 байт = 8 бит
28 = 256 (256 комбинаций двоичной системы, т.е. 256 комбинаций расположения 0 и 1)
[0;255]
знаковый
если 0 - положительный
если 1 – отрицательный
Тип данных. | Принимаемые значения | Кол-во занимаемой памяти | |
Целые числа | Byte | [-128;127] | 1 байт |
Short | [-215;215-1] | 2 байта | |
Int | [-231;231-1] | 4 байта | |
Long | [-263;263-1] | 8 байт | |
Веществ. числа | Float | [ 1.4*10-43; 3.4*1038] | 4 байта |
Double | [ 4.9*10-324; 1.8*10308] | 8 байт | |
Char | [0;216-1] | 2 байта | |
boolean | True(1)/false(0) | Не менее 1 бита |
Все перечисленные выше типы относятся к базовым или, как еще говорят, ко второстепенным типам Java.
Это значит, что для их использования не требуется задействовать готовый или создавать новый класс.
|
|
При этом все объекты, относящиеся к какому-либо классу, доступны программе через специальный ссылочный тип (хранит ссылки на объекты).
ТИПЫ JAVA
Базовые Ссылочный
Целые Вещественный Логический
Тип char предназначен для хранения целых положительных чисел, которые используются в java как номера символов по кодовой таблице Unicode. Эта таблица хранит более 65 тыс. символов из различных национальных алфавитов, включая кириллицу и популярные восточные иероглифы.
Ранее использовалась более короткая кодовая таблица ASCII, в которую помещалось только 256 симфолов, что требовало создавать какие-то отдельные версии таблицы для разных национальный алфавитов.
сhar s;
s=81;
s=’Q’; \\ символы в одинарных кавычках \\ код – 81
…s=’A’ \\ код – 65
System.out.println(s); \\ выводит А
…s=81;
System.out.println(s); \\ Q
System.out.println((int)s); \\ 81
int k;
k=s*2;
System.out.println(k); \\ 162
k=’A’+’Q’; \\ 146
Тип данных любой переменной должен быть задан до того как она впервые будет использована.
Для созданной переменной тип изменить нельзя.
Кроме переменных типы распространяются еще и на те значения что в переменные записываются.
Конкретными значениями того или иного типа называются литералами.
Пример:
Int a=5;
System.out.println(2+3.0/2);
2 \\ int
2L \\ long
2.0 \\ double
2.0F или 2.0f \\ float
Для хранения логических значений в java используется тип boolean и два литерала этого типа: true & false.
Для хранения в памяти такого набора значений хватило бы одного вида, но память выделяется минимальными порциями большего размера. Поэтому для хранения единственной логичной переменной нужно потратить 1 байт памяти. Если имеется последовательность таких переменных, то их можно упаковать, расходуя на каждую от бита до байта.
|
|
С помощью автоматического или явного проведения типов целочисленное значение может конвертироваться в вещественное и наоборот.
double a=3;
int b=3.0;
Логический тип не может преобразовываться к любым другим типам явно или автоматически.
Прежде, чем переменную можно будет использовать в программе, записывая или читая из неё значения, переменную надо объявить. Это происходит по следующей схеме:
тип данных _ имя переменных;
Тип данных – один из встроенных java-типов.
Имя переменной(индефикатор) – это уникальная данная части программы, состоящая из латинских букв разного регистра, цифр, знаков подчеркивания и доллара($). При этом имя не может начинаться с цифры.
Принято не начинать имена переменных с заглавной буквы, поскольку с неё начинаются имена классов.
пример: А11 – имя класса
bs_4 – имя переменной
У созданной переменной тип данных не изменяется.
Перед тем, как из переменной будет прочитано значение, оно туда будет записано.
Задание переменной начального значения называется инициализацией.
Она может проводиться несколькими способами:
1. int a;
a=13;…
2. int a=13;…
3. int a1=13, a2=12;
4. float x, y, z;
x=3.5;
y=2.71;
z=1;…
z=5+a \\ а должно быть объявлено
S.o.p.(b) \\ b должно быть объявлено
В java оператор присваивания обозначаем «=» и он действует строго по следующему принципу:
Значение выражения, которое стоит справа от оператора записывается в переменную слева от оператора.
При этом тип переменной должен строго совпадать с типом выражения, либо тип выражения должен автоприводиться до типа переменных.
b=a \\ ошибка
5+а=а \\ ошибка
int b;
b=10/3;
b=10/3.0; \\ ошибка
double z=10/3; \\ 3.0
Не нужно путать оператор присваивания программирования со знаком «=» в математике.
а = b;