2015-07-04 2 views
3

Почему он показывает линию удара по getDate(), getMonth() и getYear(). Эти методы используются для получения текущей даты, месяца и года, но я не знаю, почему это показывает забастовку по этим методам.Java Show Strike Line on Methods

Код:

public class hello { 

    public static void main(String[] args) { 
     int days; 
     int month; 
     int year; 

     days = 24; 
     month = 10; 
     year = 1994; 

     System.out.println("Date of Birth: " + days + "/" + month + "/" + year); 

     Date d = new Date(); 

     int t = d.getDate(); 
     int x = d.getMonth() + 1; 
     int f = d.getYear() + 1900; 

     System.out.println("Current Date: " + t + "/" + x + "/" + f); 
    } 
} 

ответ

4

Ида как Eclipse, ударит методы, если они устарели, а это означает, что они не рекомендуются для использования, потому что есть лучшая альтернатива. См. Javadocs of getDate():

Устаревший. Начиная с версии JDK версии 1.1, заменяется на Calendar.get(Calendar.DAY_OF_MONTH).

Использование Calendar методы:

Calendar calendar = Calendar.getInstance(); 
int day = calendar.get(Calendar.DAY_OF_MONTH); 
int month = calendar.get(Calendar.MONTH) + 1; 
int year = calendar.get(Calendar.YEAR); 
+0

что среднее GetInstance(); – hamel123

+0

@ hamel123 https://docs.oracle.com/javase/8/docs/api/java/util/Calendar.html – manouti

2

Это becuase они устарели. Если вы установите @deprecated в информации выше функции, она будет ударять методы в большинстве IDE.

Эти конкретные функции устарели, поскольку более новый вариант Calendar - лучший вариант.

+0

И хорошо не использовать устаревшие методы ... –

+0

@ddmps Как использовать Календарь на место этих методов – hamel123

0

Попробуйте это.

 int days; 
    int month; 
    int year; 

     days=24; 
     month=10;   
     year=1994; 

     System.out.println("Date of Birth: "+days+ "/" +month+ "/" +year); 

     LocalDate dd = LocalDate.of(year, month, days); 

    System.out.println("Current Date: " + dd); 
    System.out.println("Month: " + dd.getMonth()); 
    System.out.println("Day: " + dd.getDayOfMonth()); 
    System.out.println("Year: " + dd.getYear()); 

    //If you would add year 
    LocalDate newYear = dd.plusYears(10); 
    System.out.println("New Date: " + newYear); 

Это вывод:

Дата рождения: 24/10/1994

Текущая Дата: 1994-10-24

Месяц: Октябрь

день : 24

Год: 1994

Новая Дата: 2004-10-24