Dlaczego nawiasy są używane wokół nazwy klasy w Javie?
Natknąłem się na jakiś kod i nie mogę zrozumieć jego niektórych aspektów, chociaż przeprowadziłem obszerne wyszukiwanie!
Moje pytanie brzmi: dlaczego klasy są czasami deklarowane w nawiasach, jak w poniższym kodzie?
public class Animal {
public static void hide() {
System.out.println("The hide method in Animal.");
}
public void override() {
System.out.println("The override method in Animal.");
}
}
public class Cat extends Animal {
public static void hide() {
System.out.println("The hide method in Cat.");
}
public void override() {
System.out.println("The override method in Cat.");
}
public static void main(String[] args) {
Cat myCat = new Cat();
Animal myAnimal = (Animal)myCat;
myAnimal.hide();
myAnimal.override();
}
}
gdzie w szczególności skupiam się na tej linii kodu:
Animal myAnimal = (Animal)myCat;
Uważam, że ma to coś wspólnego z faktem, że jedna klasa rozszerza inną klasę, ale nie jestem pewien, co oznacza klasa zdefiniowana w nawiasach.
Każda pomoc na ten temat jest mile widziana. Z góry dziękuję.