Jestem nowy w programowaniu. Patrzyłem na odpowiedź this i znalazłem listę możliwych wartości dla adnotacji @SuppressWarnings. ale nie mogę wymyślić użycia wartości ukrywania. Czy ktoś może mi pomóc z przykładem?Jaki jest cel @SuppressWarnings ("ukrywanie") w czasie zaćmienia?
Odpowiedz
Od xyzws,
Klasa może zadeklarować zmienną o tej samej nazwie, jako zmiennej dziedziczonej od jego klasy nadrzędnej, a tym samym „ukrycie” lub shadowing wersji dziedziczone. (To jest jak nadrzędnymi, ale dla zmiennych.)
więc ukrywanie w zasadzie oznacza, że utworzyliśmy zmienną o tej samej nazwie co zmienna od odziedziczonej zakresu oraz ostrzeżenie jest tylko pozwalając wiesz, że zrobiliśmy to (na wypadek, gdybyś potrzebował dostępu do zmiennej dziedziczonej oraz zmiennej lokalnej).
Przykładem jest:
public class Base {
public String name = "Base";
public String getName() { return name; }
}
public class Sub extends Base {
public String name = "Sub";
public String getName() { return name; }
}
W tym przykładzie Sub
ukrywa wartość name
podane przez Base
z jego własnej wartości - "Sub"
. Eclipse ostrzeże Cię - na wypadek gdybyś potrzebował oryginalnej wartości zmiennej name
- "Base"
.
Wow, to było miłe wyjaśnienie, dziękuję kolego. – theapache64
https://docs.oracle.com/javase/tutorial/java/IandI/hidevariables.html –