Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Характеристика класу Calendar




ОБ’ЄКТИ JAVA

В об'єктно-орієнтованому програмуванні, класи використовуються для групування пов'язаних змінних та функцій. Клас описує набір інкапсульованих змінних екземпляра та методів (функцій), можливо, разом з реалізацією цих типів із конструктором, який може використовуватись для створення екземплярів класу.

Клас є зв’язаним пакетом, який складається із спеціальних метаданих часу компіляції. Він описує правила за якими діють об'єкти; ці об'єкти називаються «екземплярами» цього класу. Клас визначає структуру даних, що містить кожний екземпляр, і, також, методи (функції), які обробляють дані екземпляра та виконують завдання; ці методи часто називають «поведінкою». Метод є функцією, що має доступ до даних об'єкта. Клас є специфічним типом даних об'єкта по відношенню до окремого прошарку. Клас може мати представлення під час виконання програми, який надає допомогу в роботі з метаданими класу.

Calendar є абстрактним класом. Для різних платформ реалізуються конкретні підкласи календаря. На даний момент існує реалізація Григоріанського календаря – 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.
Розглянемо докладніше порядок виконання перерахованих методів.
set(int field, int value).

Даний метод виробляє установку будь-яку роль дати. Насправді після виклику цього методу, негайного перерахунку дати не проводиться. Перерахунок дати буде здійснено тільки після виклику методів get(), getTime() або TimeInMillis(). Таким чином послідовна установка декількох полів, не викличе не потрібних обчислень.

Оскільки Сalendar – абстрактний клас, його екземпляри створюються чотирма статичними методами за заданою локалі і / або часовому поясу:
Calendar getlnstance ()

Calendar getlnstance (Locale loc)

Calendar getlnstance (TimeZone tz)

Calendar getlnstance (TimeZone tz, Locale loc)

Для роботи з місяцями визначені цілочисельні константи від JANUARY до DECEMBER, для роботи з днями тижня – константи MONDAY до SUNDAY.

Перший день тижня можна дізнатися методом int getFirstDayOfWeek (), a встановити – методом setFirstDayOfWeek(int day), наприклад:

setFirstDayOfWeek (Calendar.MONDAY) Решта методи дозволяють переглянути час і часовий пояс або встановити їх.

2.2. Опис методу getClass()

У Java відсутнє множинне спадкування. Кожен клас може мати тільки одного батька. Таким чином, ми можемо простежити ланцюжок успадкування від будь-якого класу, піднімаючись усе вище. Існує клас, на якому такий ланцюжок завжди закінчується, це клас Object. Саме від нього успадковуються всі класи, в оголошенні яких явно не зазначений інший батьківський клас. А значить, будь-який клас безпосередньо або через своїх батьків є спадкоємцем Object. Звідси випливає, що методи цього класу є у будь-якого об'єкта (поля у Object відсутні), а тому вони становлять особливий інтерес.

Метод getClass() використовується для доступу до класу об'єкта під час виконання. Метод getClass() представлений в java.lang.Object, тому у будь-якого об'єкта в Java можна запитати його клас. getClass() повертає об'єкт класу java.lang.Class. getClass() один з основних методів. Цей метод повертає об'єкт класу Class, який описує клас, від якого був породжений цей об'єкт. У нього є метод getName(), який повертає ім'я класу:

String s = "abc";

Class cl = s.getClass ();

print (cl.getName ());

Результатом буде рядок:

java.lang.String
На відміну від оператора instanceof, метод getClass() завжди повертає точно той клас, від якого був породжений об'єкт.




Поделиться с друзьями:


Дата добавления: 2015-06-04; Просмотров: 570; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.