如何通过另一个类的方法访问对象的参数(C#)

时间:2011-06-11 14:34:50

标签: c# methods

您好,我需要您的帮助..

我有一个叫做Book和Title的2个classe和一个名为Book的构造函数(字符串A,字符串B,字符串C,字符串D),在主程序类中我调用包含在Title类中的方法AddCopy()参见代码来自下面的主要课程:

Book book1 = new Book("A", "B", "C","D");
book1.AddCopy(Copy copy);

现在我的主要问题是:如何在AddCopy方法中访问A,B,C,D参数?

1 个答案:

答案 0 :(得分:2)

构造函数调用的参数A,B,C和D都在构造函数中作用域 - 这意味着它们仅在构造函数中可用。

要从AddCopy方法访问它们的值,您需要将它们复制到构造函数中的类级别字段。

所以你的Book课程就像:

public class Book
{
    private string _a;
    private string _b;
    private string _c;
    private string _d;

    public Book(string A, string B, string C, string D)
    {
        _a = A;
        _b = B;
        _c = C;
        _d = D;
    }

    public void AddCopy(Copy copy)
    {
        // within this method you can access the private fields, but there is no
        // way to access the A, B, C and D parameters of the constructor.

        string someString = _a + _b + copy.SomeProperty;
    }
}