C# 为什么用接口实例化一个实现该接口的类?

这是多态的体现。

首先接口不能实例化的。

实现接口的类 实例 = new 实现接口的类()// 这样用不好吗?

//这样已经不是好不好的问题了,这样的话,要接口有什么用?
//用接口就是让实例和实现类的耦合度降低。
//让程序更加容扩展。

以下是问题之外的知识,想看可以往下,不想看跳过。

接口 实例 = new 实现接口的类A()
接口 实例 = new 实现接口的类B()
接口 实例 = new 实现接口的类C()
这样的逻辑就是说,我们需要某个类,所以我们每次实例化它。

如果把 ABC这三个类,再用一个类封D装起来,会怎么样呢?

接口 实例 = D.A
接口 实例 = D.B
接口 实例 = D.C

我们还是需要某个类,但是,我们不需要每次都实例化了,只需要找D“拿”就行。

嗯,这就是工厂模式的来由!!!!
原文地址:https://www.cnblogs.com/ZengYunChun/p/6089368.html