class Base
{
}
class Derive:Base
{
}
Base b=new Derive();
Приведенный выше код работает, но почему мы можем создать объект класса Derive и присвоить его базовому классу. Кроме того, переменная объекта «b» сможет получить доступ ко всем не закрытым переменным и методам Base Base, даже если она ссылается на Derive Class. Что делает это возможным, почему объектная переменная 'b', которая ссылается на Derive Object, имеет доступ к базовому классу, а не к классу Derive.Основы наследования
Я не думаю, что код будет работать, они даже не компилируются. – pierrotlefou