В программе создаются : Объект базового класса, объект производного класса и ссылка на объект базового класса.
Вопрос : Как нужно произвести преобразование ссылки (Ref) так чтобы она указывала на объект производного класса с возможностью использования его не виртуальной функции ?
Код
using System;
namespace ConsoleApplication1
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
Base B = new Base();
Drived D = new Drived();
Base Ref;
}
}
class Base
{
public virtual int virtualF()
{
return 0;
}
}
class Drived: Base
{
public override int virtualF()
{
return 1;
}
public int noVirtualF()
{
return 2;
}
}
}
namespace ConsoleApplication1
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
Base B = new Base();
Drived D = new Drived();
Base Ref;
}
}
class Base
{
public virtual int virtualF()
{
return 0;
}
}
class Drived: Base
{
public override int virtualF()
{
return 1;
}
public int noVirtualF()
{
return 2;
}
}
}
Или при таком раскладе меняя Ref = B, Ref = D, я смогу использовать только их виртуальные функции ?