INFORMATION
  Полезные ссылки
  ФОРУМ ПРОГРАММИРОВАНИЕ
  HTML
  Язык HOD Text Processor
  C++ / C
  C++ под Linux
  ASSEMBLER
  FAQ по WIN32 прогр.
  Алогритмы, методы
  CGI / PERL
  JAVA
  Руководство по языку JAVA
  JAVASCRIPT
  SQL / MySQL
  PHP
  SSI
  XML
  DHTML
  WML (WAP)
  VBSCRIPT
  *NIX SHELL
  RFC / Протоколы







Базовые типы данных

 

В языке Java определено восемь базовых типов данных. Для каждого базового типа данных отводится конкретный размер памяти. Этот размер, как мы говорили в предыдущем разделе, не зависит от платформы, на которой выполняется приложение Java:

Тип данных

Размер занимаемой области памяти

Значение по умолчанию

boolean

8

false

byte

8

0

char

16

'x0'

short

16

0

int

32

0

long

64

0

float

32

0.0F

double

64

0.0D

Фактически размеры памяти, отведенные для хранения переменной, могут отличаться от приведенных выше, например, для хранения переменной типа short может быть зарезервировано слово размером 32 бита. Однако язык Java сделан таким образом, что это никак не повлияет на мобильность приложения. Так как в языке Java нет указателей, вы не можете адресоваться к элементам массива чисел по относительному смещению этих элементов в оперативной памяти. Следовательно, точный размер элемента в данном случае не играет никакой роли.

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

int nCounter = 0;
int i;
i = 8;

Переменные типа boolean могут находиться только в двух состояниях - true и false, причем эти состояния никаким образом нельзя соотнести с целыми значениями. Вы не можете, как это было в языке С, выполнить преобразование типа boolean, например, к типу int - компилятор выдаст сообщение об ошибке.

Переменная типа byte занимает восемь бит памяти и про нее больше нечего сказать.

Что же касается типа char, то он используется для хранения символов в кодировке UNICODE. Эта кодировка позволяет хранить национальные наборы символов, что очень удобно для интернациональных приложений, предназначенных для работы в Internet.

Переменные типа byte, short, int и long являются знаковыми. В языке Java нет беззнаковых переменных, как это было в языке С.

Приложение Java может оперировать числами в формате с плавающей точкой, определенным в спецификации IEEE 754. Тип float позволяет хранить числа с одинарной точностью, а формат double - с двойной.

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

int x;
void ChangeX(int x)
{
  x = 5;
}
. . .
x = 0;
ChangeX(x);

После вызова функции ChangeX содержимое переменной x останется равным нулю.

Проблему можно решить, если вместо базовых переменных использовать объекты встроенных классов, соответствующие базовым переменным. О встроенных классах вы узнаете из следующего раздела.



[   ВЕРНУТЬСЯ К ОГЛАВЛЕНИЮ   ]