Microsoft Word кл программирование на Java 2020 Зорина docx


Лекция 8. Пакеты java.lang, java.util. Потоки ввода/вывода в



Pdf көрінісі
бет63/65
Дата17.10.2023
өлшемі3,23 Mb.
#117230
түріРеферат
1   ...   57   58   59   60   61   62   63   64   65
Байланысты:
Лекции

Лекция 8. Пакеты java.lang, java.util. Потоки ввода/вывода в 
Java. 
В Java есть много классов, доступных для работы с датой/временем. 
Класс Date 
Класс Date изначально предоставлял набор функций для работы с датой - для 
получения текущего года, месяца и т.д. однако сейчас все эти методы не 
рекомендованы к использованию и практически всю функциональность для этого 
предоставляет класс Calendar. Класс Date так же определен в пакете java.sql поэтому 
желательно указывать полностью квалифицированное имя класса Date. 
Существует несколько конструкторов класса Date однако рекомендовано к 
использованию два 
Date() и Date(long date) второй конструктор использует в качестве параметра 
значение типа long который указывает на количество миллисекунд прошедшее с 1 
Января 1970, 00:00:00 по Гринвичу. Первый конструктор создает дату использует 
текущее время и дату (т.е. время выполнения конструктора). Фактически это 
эквивалентно второму варианту new Date(System.currentTimeMillis); Можно уже 
после создания экземпляра класса Date использовать метод setTime(long time), для 
того, что бы задать текущее время. 
Для сравнения дат служат методы after(Date date), before(Date date) которые 
возвращают булевское значение в зависимости от того выполнено условие или нет. 
Метод compareTo(Date anotherDate) возвращает значение типа int которое равно -1 
если дата меньше сравниваемой, 1 если больше и 0 если даты равны. Метод toString() 
представляет строковое представление даты, однако для форматирования даты в виде 
строк рекомендуется пользоваться классом SimpleDateFormat определенном в пакте 
java.text 
 
Классы Calendar и GregorianCalendar 
Более развитые средства для работы с датами представляет класс Calendar
Calendar является абстрактным классом. Для различных платформ реализуются 


136 
конкретные подклассы календаря. На данный момент существует реализация 
Грегорианского календаря - GregorianCalendar. Экземпляр этого класса получается 
вызовом статического метода getInstance(), который возвращает экземпляр класса 
Gregorian. Подклассы класса Calendar должны интерпретировать объект Date по-
разному. В будущем предполагается реализовать так же лунный календарь
используемый в некоторых странах. Calendar обеспечивает набор методов 
позволяющих манипулировать различными "частями" даты, т.е. получать и 
устанавливать дни, месяцы, недели и т.д. Если при задании параметров календаря 
упущены некоторые параметры, то для них будут использованы значения по 
умолчанию для начала отсчета. т.е.YEAR = 1970, MONTH = JANUARY, DATE = 1 и 
т.д. 
Для считывания, установки манипуляции различных "частей" даты 
используются методы get(int filed), set(int filed, int value), add(int field, int amount), 
roll(int field, inr amount), переменная типа int с именем filed указывает на номер поля 
с которым нужно произвести операцию. Для удобства все эти поля определены в 
Calendar, как статические константы типа int. Рассмотрим подробнее порядок 
выполнения перечисленных методов.


Достарыңызбен бөлісу:
1   ...   57   58   59   60   61   62   63   64   65




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет