Когда вы удаляете модификатор доступа public
, вы удаляете любую возможность вызывать метод B new Print()
из функции Main
, потому что теперь он по умолчанию равен private
. Он больше не доступен для Main.
Единственным оставшимся вариантом является использование метода, унаследованного от A, поскольку это единственная доступная реализация. Если бы вы вызывали Print () из другого метода B, вы бы получили реализацию B, потому что члены B увидели бы частную реализацию.