Даны два класса:

package pak1;
import pak2.B;
public class A {
	void doAThings() {
		System.out.print("A ");
	}
	
	public static void main(String[] args) {
		A a = new B();
		a.doAThings();
	}
}
и

package pak2;
import pak1.A;
public class B extends A {
	public void doAThings() {
		System.out.println("I'm B ;)");
	}
}
Что произойдет при попытке компиляции обоих классов и запуска main-метода?
Explanation
Метод doAThings не наследуется классом В, т.к. В находятся в другом пакете, а модификатор доступа у doAThings отсутствует. Поэтому полиморфный вызов doAThings не произойдет. Вызовется метод doAThings класса А.

Слідкуй за CodeGalaxy

Мобільний додаток Beta

Get it on Google Play
Зворотній Зв’язок
Продовжуйте вивчати
тести з Java
Cosmo
Зареєструйся Зараз
або Підпишись на майбутні тести