0

我有一个实现特定接口的类(IOrganicEnvironment<T, K>

public class Colorizator : IOrganicEnvironment<Cell<YUV>, YUV>, ICommand
{
    // ..
}

它还实现了 ICommand iterface

public interface ICommand
{
    void Execute();
}

IOrganicEnvironment<T, K>接口提供了一堆方法和属性,我主要在ICommand Execute()方法内部使用。

但是我不需要任何客户端代码来从Colorizator实例调用这些方法和属性。

我能/应该做什么?如果我实现接口explicitly并制作它internal会有帮助吗?

4

1 回答 1

2

我认为使用组合会更好。

public class Colorizator : IOrganicEnvironment<Cell<YUV>, YUV>>
{
   // normal code here
}

public class ColorizatorCommand : ICommand
{
    private Colorizator _colorizator;

    public ColorizatorCommand(Colorizator colorizator)
    {
        _colorizator = colorizator;
    }

    public void Execute()
    {
        //use _colorizator here;
    }
}
于 2011-05-25T05:55:25.833 回答