我有一种情况,我想覆盖基类的方法,以略微改变方法的返回类型.通过稍微改变,我的意思是返回一个继承自对象的对象,该对象将由基类型中的方法返回...实际上,一些代码会使这更容易...
class Program
{
static void Main(string[] args)
{
var obj = new ParentClass();
Console.WriteLine("Parent says: " + obj.ShowYourHand());
var obj2 = new ChildClass();
Console.WriteLine("Child says: " + obj2.ShowYourHand());
Console.ReadLine();
}
}
public class ParentClass
{
public string ShowYourHand()
{
var obj = GetExternalObject();
return obj.ToString();
}
protected virtual ExternalObject GetExternalObject()
{
return new ExternalObject();
}
}
public class ChildClass : ParentClass
{
protected virtual new ExternalObjectStub GetExternalObject()
{
return new ExternalObjectStub();
}
}
public class ExternalObject
{
public override …Run Code Online (Sandbox Code Playgroud) 假设有两组字符串:
[ "Mr. Jones", "O'Flaherty", "Bob", "Rob Jenkins" ]
[ "Maxwell O'Flaherty", "Robert Jenkins", "Mrs. Smith" ]
Run Code Online (Sandbox Code Playgroud)
很明显,这两套有Maxwell O'Flaherty和Robert Jenkins的共同点.
是否有任何算法可以让我们以编程方式进行这样的匹配?我正在考虑编写将遍历字符串数组中的每个元素的内容,并尝试查找任何子集,这些子字符串是唯一的,并且不包含在任何一个集合中的任何其他元素中,然后将其用作每个元素的一种哈希值匹配两套.