需要类设计

本文关键字: | 更新日期: 2023-09-27 18:35:51

我有两个类,A类和B类。类 A 有一个方法,该方法创建类 B 的实例并使用该实例调用公共方法。

B obj = new B();
obj.DoSomething();

现在 B 类的 DoSomething() 方法有一个循环。

public void DoSomething()
{
    for(int i=1;i<=10;i++)
    {
       //Do some task
       //call a method of class A for this iteration
    }
}

最好的方法是什么?如果我在DoSomething()方法中创建类A的实例,然后调用类A的方法,它会导致循环引用吗?这是正确的方法吗?

需要类设计

问题是不清楚

AB的依赖关系还是BA的依赖关系。首先,我认为你必须定义这方面。考虑到这一点,您的课程设计将更加自然和流畅。

因此,例如,如果您需要使用 A 实例DoSomething() B,则可以在 B 类中放置一个 A 成员:

public class B
{
    private A _aInstance;
    public B(A aInstance)
    {
        this._aInstance = aInstance;
    }
    public void DoSomething()
    {
        for(int i=1;i<=10;i++)
        {
           //Do some task
           _aInstance.DoSomethingOther();
        }
    }
}

根据您的程序逻辑,您可以使用 this 关键字传递对类 A 的当前实例的引用。

或者更改程序逻辑,使循环位于类 A 中。然后,循环将调用类 B 中的方法;之后,类 A 中的调用方法调用迭代的相应方法。

相关文章:
  • 没有找到相关文章