【发布时间】:2015-03-14 17:52:36
【问题描述】:
我想知道是否有一种方法可以访问我在下面的代码中拥有的对象中的不同方法?
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication8
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
_test[0] = new TallGuy() {Height = 74, Name = "Teddy Long"};
_test[1] = new TallGuy() {Height = 64, Name = "Teddy Shorter"};
_test[2] = new TallGuy() {Height = 54, Name = "Teddy Shortest"};
}
private readonly object[] _test = new object[3];
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < _test.Length; i++)
{
//_test[i]. I can't call any methods here...
}
}
}
}
我使用 Object 类型而不是一个类的数组背后的原因是因为我想在数组中存储不同类型的对象。在我的测试中途,虽然我注意到我无法访问我已经存储在数组中的对象的方法,因此为什么那里只有一种类型的对象。
【问题讨论】:
-
确实,我打算添加不同的类型,但偶然发现了这个问题。决定在我继续之前先尝试解决它。
-
您需要将对象转换为适当的类型才能访问其方法