C# 从接口访问另一个类中的对象?

C# 从接口访问另一个类中的对象?,c#,oop,C#,Oop,这可能吗?以下是我目前正在使用的代码的重要部分: public class Bag : IBag { public IRack NewRack() { ...some code here...} } public class Rack : IRack { public void SwapAllTiles() { ...can I access the Bag object here somehow?... } } 我的问题是,我是否可以访问Rack类中的当前Bag对象而不必从

这可能吗?以下是我目前正在使用的代码的重要部分:

public class Bag : IBag
{
    public IRack NewRack() { ...some code here...}
}

public class Rack : IRack
{
   public void SwapAllTiles() { ...can I access the Bag object here somehow?... }
} 
我的问题是,我是否可以访问Rack类中的当前Bag对象而不必从Bag类派生,比如通过IRack接口?我现在让它工作的方式是我有一个Rack-derive-from-Bag,我可以使用一个getter来访问当前Bag的实例,但是这看起来不是一个好的形式。使用静态实例会更好吗


注意:我不想在我的Rack类中放置私人Bag对象,在技术上是独立的(它基本上是一个scrabble tile包和一个scrabble Rack。我需要Rack能够引用或访问包中的tiles,但我不希望每个机架都有自己的包。)

将行李对象作为参数传递给机架对象中的方法

如果不想,不必在成员变量中保留对它的引用。但是如果您想要持久访问它,您确实需要一个私有成员。如果没有私有成员引用,您将只能在方法的生命周期内访问它

public class Rack : IRack
{
   public void SwapAllTiles(IBag bag) { ...Now you can access it... }
}

类名称
Bag
Rack
表明他可能应该选择构造函数/私有成员方法。