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
表明他可能应该选择构造函数/私有成员方法。