C# 使用类或接口c声明对象时的差异#
我无法找到令人信服的答案,将对象声明为类或接口的确切区别是什么 下面两个代码之间的区别是什么C# 使用类或接口c声明对象时的差异#,c#,class,interface,C#,Class,Interface,我无法找到令人信服的答案,将对象声明为类或接口的确切区别是什么 下面两个代码之间的区别是什么 ILogger log = new MyLogger(); //ILogger is an interface and MyLogger class implements ILogger 及 两者都会创建类型为MyLogger的对象,那么这两者之间的区别是什么。否,如果您从对象创建的角度考虑,但如果您声明为 ILogger log = new MyLogger(); 然后,您将能够仅访问那些函数和属
ILogger log = new MyLogger(); //ILogger is an interface and MyLogger class implements ILogger
及
两者都会创建类型为
MyLogger
的对象,那么这两者之间的区别是什么。否,如果您从对象创建的角度考虑,但如果您声明为
ILogger log = new MyLogger();
然后,您将能够仅访问那些函数和属性,而无需添加cast
,这些函数和属性是在接口ILogger
中声明的,但另一方面是通过声明
MyLogger log = new MyLogger();
当类实现接口时,您将能够访问类
MyLogger
以及接口ILogger
的所有函数和属性ILogger阅读这里的简短说明。但请在提问之前做任何研究。我想说基本上是lineILogger log=new MyLogger()
希望日志的类型能够实现ILogger
接口和行MyLogger log=new MyLogger()代码>要求日志为MyLogger
类型。
MyLogger log = new MyLogger();