Jeśli spojrzysz w enum api na metodę name()
, mówi ona, że:
Zwraca nazwę tej stałej wyliczeniowej, dokładnie taką, jaka została zadeklarowana w deklaracji wyliczenia. Większość programistów powinna używać metody toString zamiast tej, ponieważ metoda toString może zwracać bardziej przyjazną dla użytkownika nazwę. Ta metoda jest przeznaczona głównie do stosowania w specjalnych sytuacjach, w których poprawność zależy od uzyskania dokładnej nazwy, która nie będzie się różnić w zależności od wydania.
Dlaczego lepiej używać toString()
? Chodzi mi o to, że toString może zostać zastąpione, gdy name () jest już ostateczna. Więc jeśli użyjesz toString i ktoś nadpisze to, aby zwrócić zakodowaną na stałe wartość, cała aplikacja jest wyłączona ... Również jeśli spojrzysz na źródła, metoda toString () zwraca dokładnie i tylko nazwę. To jest to samo.
toString()
w swoim wyliczeniu, ale nikt inny nie może go rozszerzyć ani zastąpić. Nie możesz przedłużyć wyliczeń.