| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > получить getTimeInMillis() из Calendar |
| Автор: renex 5.12.2005, 03:14 | ||
| java.util.Calendar - абстрактный класс, но объект Calendar можно получить так: Calendar cal = Calendar.getInstance(); Метод класса Calendar - getTimeInMillis() - protected, поэтому я не могу прямо сразу обратиться к нему, а мне он очень нужен. я написал расширение класса Calendar:
Так вот проблема в том, что я не могу воспользоваться написанным методом, потому что не могу создать объект класса TaskCalendar - он же абстрактный! А получить его объект через TaskCalendar.getInstance() - возвращает обычный Calendar. Класс Date - позволяет получить в миллисекундах время только с "начала времен" до текущего момента, а мне нужно для определенной даты, динамически задающейся пользователем в календаре получать её значение в миллисекундах с "начала времен". Есть какие-нибудь идеи как мне это сделать?? |
| Автор: tux 5.12.2005, 03:55 | ||
Метод java.util.Calendar.getInstance() возвращает не абстрактный, а вполне конкретный класс - http://java.sun.com/j2se/1.4.2/docs/api/java/util/GregorianCalendar.html. Если создаешь свой класс проще будет от него и унаследовать, в java.util.Calendar много абстрактных методов придется реализовывать.
|
| Автор: maximb 5.12.2005, 10:01 | ||
| Почему этот метод protected. Вот реализация этого метода в Calendar
и этот метод public |
| Автор: renex 5.12.2005, 11:48 | ||
| maximb Возможно, у меня другая версия, но при попытке: Calendar cal = Calendar.getInstance(); long ms = cal.getTimeInMillis(); Пишет, что метод protected. tux Спасибо большое! Получилось так:
Вызвал, и всё получилось. Несказанно рад*) Теперь вместо Calendar буду везде в проекте работать с этим классом, хотя раньше искал лишь реализацию этого метода. Может, еще допишу что-то. |