Отправляет email-рассылки с помощью сервиса Sendsay

Программирование в среде Java

  Все выпуски  

Программирование в среде Java


Служба Рассылок Subscribe.Ru проекта Citycat.Ru
                           Управляющие структуры.
                                 (начало)

  При объявлении переменной простого типа для этой переменной сразу
 выделяется память, т.е. переменная простого типа-это то куда всегда
 можно что-то записывать и откуда можно что-то считывать. С объектами
 (экземпярами классов) все обстоит иначе. Реально, объявляя экземпляр
 класса, мы выделяем память лишь под ссылку, которая должна использоваться
 для доступа к экземпляру этого класса. Т.о. для экземпляра класса нужно
 выделить память под объект и проинициализировать ссылку(для программистов
 C++ вполне знакомое положение вещей). Как это сделать, читайте ниже.

  Оператор присваивания. Присваивание объекту или переменной простого типа
 значения производится оператором присваивания :). Его синтаксис таков:
 <пер_1>=<пер_2>; , где пер_1 и пер_2-переменные одного простого типа либо
 соответственно экземпляры одного класса (дополнительно возможен случай
 несогласованных типов или классов, когда используется неявное приведение,
 поговорим об этом позже). Оператор присваивания может являться частью
 объявления переменной (инициализацией). Инициализация в этом случае
 выглядит так: <тип> <пер_1>=<пер_2>; Если в Java-программе объявление
 переменной не включает инициализацию, то переменная содержит т.н. значение
 по умолчанию (в частности, для простых числовых типов - 0, для логического
 - false, для экземпляров классов ссылка инициализируется значением null).
 Для инициализации экземпляров классов (кроме как присвоением другого
 объекта) можно воспользоваться конструкцией new <имя_типа>(), она
 создает новый объект. Например для создания объекта класса String
 используется конструкция String str = new String(); Особое внимание
 при присваивании экземпляров класса стоит обратить на то что происходит
 не создание идентичного объекта а лишь копирование ссылки, т.е.
 исходный и присвоенный экземпляр ссылаются на один и тот же объект.

 Чем могут быть проинициализированы переменные простых типов:
 byte, short, int, long (занимают соответственно 8,16,32,64 бита)-
                   целочисленные знаковые типы. Инициализируются
                   целыми числами :), например -1 0 100. Учтите, что
                   слишком большие или слишком малые числа могут не
                   помещаться в переменную какого-либо типа, поэтому
                   выбирайте тип в соответствии с реальными потребностями.
 float, double          (занимают соответственно 32 и 64 бита)-
                   вещественные знаковые типы. Инициализируются
                   вещественными числами, например 1.0 1.0e10 2.13e-10
                   запись чисел определяет какой-то стандарт (к сожалению,
                   не помню номер). Запись до функциональной e означает
                   математическую запись десятичной дроби, если есть
                   e, то нужно это число умножить на "10 в степени, то что
                   после e". Также стандарт определяет плюс/минус
                   бесконечность и NaN-не число (результат операции 0.0/0.0)

 boolean           инициализируется константными выражениями true или false.
                   Логический тип boolean используется в, и является
                   результатом логических операций.Если, например, в C
                   для этого использовался целочисленный тип, то в Java
                   boolean и только boolean.

 char              инициализируется выражениями типа '\123' или просто
                   олиночным символом заключенным в одинарные кавычки,
                   например 'Q'. В первом случае вы указываете номер
                   сивола в таблице Unicode, во-втором случае задаете
                   его непосредственно. Зачем может понадобиться подстановка
                   вмда \123? Очень просто, например, если вам нужно набрать
                   символ из набора Unicode, которого у вас нет на
                   клавиатуре (у вас набирается арабский алфавит или
                   а-умляут/о-умляут ?) Заложенная поддержка Unicode в Java
                   доставила много головной боли разработчикам JDK
                   (многие проблемы не решены до сих пор) ввиду отсутствия
                   поддержки со стороны операционных систем (фактически,
                   проблемы локализации возникают вследствие
                   исключительного доминирования на рынке системного и
                   программного обеспечения производителей из США, для
                   которых после объявления стандарта ASCII нет проблем
                   такого рода).

  Все остальные типы данных представляют собой классы (в том числе и те
 которые несут специальный смысл,например массивы).


http://subscribe.ru/
E-mail: ask@subscribe.ru

В избранное