假设一个名为“Place”的类存储位置和相关细节:
class Place
{
string Name;
string Location;
// etc...
}
稍后,我们会填充多达 80 个不同城镇的名称和详细信息。所以我们将这些城镇以数字形式存储在一个数组中:
class Setup
{
public static GetTowns
{
for (int i = 1; i <= numberOfTowns; i++)
{
Town[i] = new Place(name, location);
}
// more code...
}
// more methods...
}
要访问特定城镇及其数据,我们将城镇本身作为参数传递并接收它:
public static void DescribeTown(Place Town)
{
// example method from some other class
Console.WriteLine("Shipping to {0}.", Town.Name);
}
其他方法需要访问多个城镇,或所有城镇。然后我们可以传入整个 Town 数组作为参数:
public static void ListAllTowns(Place[] Town)
{
Console.WriteLine("Our Beloved Clients:");
foreach (Place here in Town)
{
Console.WriteLine("{0} in {1}", here.Name, here.Location);
// Various other operations requiring info about the Towns
}
}
完整参考 C# 2.0声明如下
参数是在调用方法时接收传递给方法的参数值的变量。
ListAllTowns
这似乎是说类的每个实例以及所涉及的所有数据在每次调用时都会被传入。这对我来说听起来很浪费,但是是吗?
(出于概念验证的原因,此示例被大大简化,但方法需要读/写权限以及多个城镇之间的比较。)