我可以用来定义具有相同名称的方法的最佳设计是什么?

Cha*_*ara 5 .net c# oop design-patterns interface

有这样的设计问题.

假设您有一组实现类似方法但不是相同方法的类.

示例:ClassA具有这样的方法.

void Add(string str);
void Delete(string str);
List<string> GetInfo(string name);
Run Code Online (Sandbox Code Playgroud)

另一个类,ClassB有以下方法.

void Add(Dictionary Info);
void Delete(string str);
Dictionary GetInfo(string name);
Run Code Online (Sandbox Code Playgroud)

因此方法的性质相似,但返回类型/输入参数不同.如果我开发一个接口来保持一致性,我只能在那里定义Delete操作.或者,我可以考虑一组独立的类,彼此没有任何关系(当然没有接口实现),但我不认为这是一个好的设计.

  1. 我可以用什么方法来实现这个?
  2. 我是通用接口的新手.这种情况有帮助吗?如果是这样,我将学习并实施它们.

Che*_*hen 8

您可以在此处使用通用接口.一个例子:

interface IModifiable<T>
{
  void Add(T Info);
  void Delete(T item);
  T GetInfo(string name);
}
public class MyClass : IModifiable<List<string>>
{
   public void Add(List<string> list)
   { 
      //do something
   }

   public void Delete(List<string> item)   {  }
   public List<string> GetInfo(string name)  {  }
}
Run Code Online (Sandbox Code Playgroud)