【问题标题】:Difference between passing simple and reference parameters in Method Overloading and Overriding?在方法重载和覆盖中传递简单参数和引用参数之间的区别?
【发布时间】:2012-09-26 06:37:04
【问题描述】:

我有三个班级:

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类的方法吗?

【问题讨论】:

  • 你一直在改变问题。我写了一半的答案,现在无效。

标签: c# overriding overloading


【解决方案1】:

1:没有; B.MethodAC.MethodA 不相关;它们隐含私有的事实意味着它甚至不是方法隐藏

2:不是问题,但是:按值传递与按引用传递(ref 关键字)在很大程度上与值类型与引用类型(structclass)正交;这是一个经常被误解的主题,但如果没有实际问题,我无法真正澄清

3:没有; virtualoverrideabstract 中没有任何一个是最大的线索

【讨论】:

    猜你喜欢
    • 2022-12-11
    • 2011-08-19
    • 2011-03-11
    • 1970-01-01
    • 2014-02-06
    • 2014-06-08
    • 1970-01-01
    • 2013-10-03
    相关资源
    最近更新 更多