- •21.Свойства текста.
- •22. Единицы измерения элемента. Границы объектов. Курсоры.
- •Отступы. Полоса прокрутки. Псевдоэлементы. Позиционирование. Размер элемента. Ссылки.
- •Основы JavaScript
- •Синтаксис JavaScript. Типы данных. Переменные и константы.
- •4.2 Синтаксис JavaScript
- •4.2.1 Типы данных
- •4.2.2 Переменные и константы
- •4.2.5 Комментарии
- •Синтаксис JavaScript. Идентификаторы. Область действия переменных. Комментарии.
- •4.2 Синтаксис JavaScript
- •4.2.3 Идентификаторы
- •4.2.4 Область действия переменных
- •4.2.5 Комментарии
- •Операторы манипулирования объектом. Оператор for...In. Оператор new. Оператор with. Ключевое слово this.
- •4.3.1 Оператор for...In
- •4.4.2 Функции и Методы
- •29. Объектная модель JavaScript. Определение методов. Создание новых объектов.
- •4.4.4 Создание Новых Объектов
- •4.4.5 Определение методов
- •30. Использование встроенных объектов и функций. Объект Date. Объект Array.
- •4.5 Использование Встроенных Объектов и Функций
- •4.5.1 Объект Date
- •4.5.2 Объект Array
- •31 Использование встроенных объектов и функций. Объект String. Объект Math.
- •4.5.3 Объект String
- •4.5.4 Объект Math
- •32 Объектная модель броузера. Объект window.
- •4.6.1 Объект window
- •33 Объектная модель броузера. Объект document.
- •4.6.2 Объект document
- •34 Коллекции объекта document.
- •4.6.3 Коллекции объекта document
- •35 Объектная модель броузера. Объект event.
- •4.6.4 Объект event
- •36 Объектная модель броузера. Объект history.
- •37 Объектная модель броузера. Объект location.
- •4.6.6 Объект location
- •38 Объектная модель броузера. Объект navigator.
- •4.6.7 Объект navigator
- •39 Структура программы Java. Библиотека классов Java.
- •Структура программы Java
- •Библиотека классов Java
- •40 Переменные и базовые типы данных. Классы-оболочки.
40 Переменные и базовые типы данных. Классы-оболочки.
Переменные и базовые типы данных
В языке Java определено восемь базовых типов данных, размер каждого из которых остается неизменным независимо от платформы. Беззнаковых типов в Java не существует.
Имена переменных не могут начинаться с цифры, в именах не могут использоваться символы арифметических и логических операторов, а также символ ‘#’. Применение символов ‘$’ и ‘_’ допустимо, в том числе и в первой позиции имени.
/* пример # 1 : типы данных и операции над ними : TypeByte.java */
class TypeByte {
public static void main(String[] args) {
int i = 3;
byte b = 1, b1 = 1 + 2;
//b = b1 + 1; //ошибка приведения типов
b = (byte)(b1 + 1);//0
//b = -b; //ошибка приведения типов
b = (byte)-b;//1
//b = +b1; //ошибка приведения типов
b = (byte) + b1; //2
b1 *= 2; //3
b1++; //4
//b = i; //ошибка приведения типов
b = (byte)i; //5
b += i++; //работает!!! //6
float f = 1.1f;
b /= f; //работает!!! //7
}
}
Переменные базовых типов, объявленные как члены класса, хранят нулевые значения, соответствующие своему типу. Если переменные объявлены как локальные переменные в методе, то перед использованием они обязательно должны быть проинициализированы.
Классы-оболочки
Кроме базовых типов данных широко используются соответствующие классы-оболочки (wrapper-классы): Boolean, Character, Integer, Byte, Short, Long, Float, Double. Объекты этих классов могут хранить те же значения, что и соответствующие им базовые типы.
Объекты этих классов представляют ссылки на участки динамической памяти, в которой хранятся их значения, и являются классами-оболочками для значений базовых типов. Указанные классы находятся в библиотеке java.lang, являются наследниками абстрактного класса Number и реализуют интерфейс Comparable, представляющий собой интерфейс для работы со всеми скалярными типами.
Объекты классов-оболочек не могут принимать участия в арифметических операциях и по умолчанию получают значение null.
Переменную базового типа можно преобразовать к соответствующему объекту, передав ее значение конструктору при объявлении объекта. Для приведения объектов к другому типу используются также методы valueOf(), toString() и др. Объекты класса могут быть преобразованы к любому базовому типу методами intValue(), digit(),
longValue() и др.
Однако класс Character не наследуется от Number, так как этому классу нет необходимости поддерживать интерфейс классов, предназначенных для хранения результатов арифметических операций. Класс Character имеет целый ряд специфических методов для обработки символьной информации. У класса Character, в отличие от других классов оболочек, не существует конструктора с параметром типа String.
/* пример # 2 : преобразование типов данных : Types.java */
public class Types {
public static void main(String[] args) {
Float f1 = new Float(10.01); //double в Float
String s1 = Float.toString(0f); //float в String
String s2 = String.valueOf(f1); //Float в String
Byte b = Byte.valueOf("120"); //String в Byte
double d = b.doubleValue(); //Byte в double
short s = (short) d; //double в short
/* Character в int */
Character ch = new Character('3');
int i = Character.digit(ch.charValue(), 10);
System.out.println("s1=" + s1 + ", s2=" + s2);
System.out.print("b=" + b + ", s=" + s
+ ", d=" + d + ", i=" + i);
}
}
Результатом выполнения данного кода будет:
s1=0.0, s2=10.01
b=120, s=120, d=120.0, i=3