在程序设计中为了达到“高内聚,低耦合”的要求,我们常常会引用接口,使一个接口作为两个类之间的媒介。那么接口是怎样解除两个类之间的耦合关系呢,解决的依据是什么?下面由我一一道来。
利用添加接口来解除耦合,还是利用了面向对象三大特性中的多态,因为多态的特性是父类或者接口的引用是可以接受子类对象。首先声明一个ITest接口,这个接口内有一个Say方法
interface ITest() //声明一个接口
{
void Say();
}
两个类Test1 和 Test2 分别实现此接口
public class Test1 : ITest
{
public void Say()
{
Console.WriteLine("Test1");
}
}
public class Test2 : ITest
{
public void Say()
{
Console.WriteLine("Test2");
}
}
在代码中耦合低可以体现在修改(删除)调用层接受层不受影响。比如我有一个方法SayName,将方法的参数类型设置为借口ITest类型。
public static void SayName(ITest test)
{
Console.WriteLine(test);
}
在调用时,就可以这样传递参数
static void Main(string[] args)
{
Test1 test1 = new Test1();
Test2 test2 = new Test2()