10 TestClass testClass = new TestClass();
11 test_int *= testClass.AddItem (new TestParam());
12 test_int *= testClass.AddItem (new ParamClass());
15 BaseClass baseClass = testClass as BaseClass;
16 base_int *= baseClass.AddItem (new TestParam());
17 base_int *= baseClass.AddItem (new ParamClass());
19 return (test_int == 4 && base_int == 9) ? 0 : 1;
23 public class ParamClass {}
25 public class TestParam : ParamClass {}
27 public abstract class BaseClass
29 public abstract int AddItem (ParamClass val);
32 public class TestClass : BaseClass
34 public int AddItem (object val)
39 public override int AddItem (ParamClass val)