仅给定一个接口,可以从中创建一个对象?
就像是:
var obj = new IWidget();
Run Code Online (Sandbox Code Playgroud)
(我知道这段代码不对 - VS不能创建IWidget的实例)
我在我的项目引用接口的上下文中,我想创建具体对象并从方法返回它们 - 但我无法弄清楚如何完全从接口创建对象.
Jon*_*eet 10
由于编译器的魔法,该代码实际上对于COM对象是正确的.通常情况并非如此.
问题是,编译器如何知道要创建哪个实现?周围可能有任何数字.您可能需要考虑为接口设置工厂,或者可能使用依赖注入(例如使用Spring.NET或Castle Windsor).
tay*_*onr 10
您无法从界面创建对象.您可以从使用该接口的类创建对象.
例如:
IList<string> x = new IList<string>();
Run Code Online (Sandbox Code Playgroud)
不管用.
IList<string> x = new List<string>();
Run Code Online (Sandbox Code Playgroud)
将.
无法创建接口,只能创建使用该接口的对象.
| 归档时间: |
|
| 查看次数: |
16748 次 |
| 最近记录: |