我有一个主表单,当用户单击按钮时,它会弹出气球提示。气球提示是在我的主表单类中从我的BalloonTip类实例化的对象。然后,我有第二种形式的设置。当用户单击设置中的某个内容时,也会出现气球提示。我目前在我的主类和SettingsForm类中实例化了一个气球提示对象。我的两个问题是:
如果在每个类中创建两次对象1,如果对象具有相同的名称(即objectBalloon)? ),那么在编译器中是否会引起任何形式的歧义?
发布于 2011-12-18 18:47:47
当您实例化一个对象时,它总是在某个范围内。
例如:
public void DoSomething()
{
BalloonTip b = new BalloonTip();
DoSomethingElse();
}
public void DoSomethingElse()
{
BalloonTip b = new BalloonTip();
}将为您提供两个不同的BalloonTip实例,它们都被称为'b‘,但它们都仅在声明它们的函数范围内有效。
您应该将类定义视为可以实例化多个对象的蓝图。在一个范围内,您可以有几个实例,但它们应该有不同的名称。
当作用域不重叠时,可以使用相同的名称指向不同的实例。
您还可以将一个实例传递给另一个方法,在该函数中,您可以通过另一个名称引用实例。
public void DoSomething()
{
BalloonTip b = new BalloonTip();
DoSomethingElse(b);
}
public void DoSomethingElse(BalloonTip c)
{
// c points to the same instance as b in the previous function
}https://stackoverflow.com/questions/8553869
复制相似问题