java.time
/**
* Default constructor to set the date info to the current date
*/
public Date()
{
// The solution is to use LocalDate
LocalDate d1 = LocalDate.now(ZoneId.systemDefault());
// I am leaving the rest to yourself, it shouldn’t be hard
}
Класс java.util.Date
, который вы пытались использовать (я думаю), плохо разработан и давно устарел.LocalDate
из java.time, современного Java-API даты и времени, с которым гораздо приятнее работать.LocalDate
содержит методы, необходимые для получения года, месяца и дня месяца в виде целых чисел.
И тогда вам не нужно переименовывать собственный класс.
Разве невозможноиспользовать то же имя класса, что и класс, который я использую?
Нет, вы можете использовать класс, имя которого совпадает с именем класса, который вы объявляете.Только вы не можете импортировать этот другой класс.Вместо этого вы можете ссылаться на него по квалифицированному имени , то есть имени класса с префиксом имени пакета:
java.util.Date d1 = new java.util.Date();
В этом случае вы не захотите, но это приятнознать.Возможно, вам понадобится другой класс в другое время.
Ссылки