我有三个班级:
public class A
{
}
public class B
{
void MethodA(ref A obj) { }
void MethodB(A obj) { }
}
public class C : B
{
void MethodA(ref A obj) { }
}
我的第一个问题:以上方法是否超载?
第二个问题:传递简单和引用类型对象之间的区别,因为我知道类是引用类型。
第三个问题:C类中的方法是否覆盖了B类中的方法?
答案 0 :(得分:4)
1:没有; B.MethodA
和C.MethodA
无关;它们是隐式私有的这一事实意味着它甚至不是方法隐藏
2:不是问题,但是:按值传递与按引用传递(ref
关键字)在很大程度上与值类型与引用类型正交(struct
vs class
);这是一个经常被误解的主题,但如果没有实际问题我就无法澄清
3:不;缺少任何virtual
,override
或abstract
是最大的线索