Я где-то читал, что переопределение - это средство, с помощью которого вы получаете полиморфизм. Полиморфизм - это способность объекта изменять поведение в зависимости от его типа.
Теперь я могу просто сказать, что когда разные подклассы переопределяют член родительского класса, это дает мне полиморфизм?
Также
class A
{
public void hello()
{
printf("in A");
}
}
class B extends A
{
public void hello()
{
printf("in B");
}
}
class C extends A
{
public void hello()
{
printf("in C);
}
}
Теперь, если я сделаю
B b=new B();
C c=new C();
A a1=b;
A a2=c;
a1.hello();
a2.hello();
теперь a1 будет использовать все члены b, которые унаследованы от A, и, следовательно, print in B
; и аналогично для а2?