显示实现接口和隐式实现接口区别
2015-09-22 11:33
267 查看
先定义一个接口:
public Interface ICategory
{
string GetName();
}
接着实现上面定义的接口:
public class Category:ICategory
{
public string GetName()
{
return name;
}
}
以上的方式是隐式的实现接口(我们默认的都是使用隐式的接口)
显式的实现接口方式:
public class Category:ICategory
{
public string ICategory.GetName()
{
return name;
}
}
区别:
1. 隐式实现接口时,我们有两种方式调用实现接口的方法(GetName()),即:
ICategory category=new Category();
category.GetName();
和
Category category=new Category();
categoty.GetName();
2. 显式实现接口时,我们只有一种方法来调用GetName(),即:
ICategory category=new Category();
category.GetName();
结论:
1. 隐式实现接口时,接口和类(实现接口的类)都可以访问类中的方法;
2. 显式实现接口时,只有通过接口来访问类中的方法;
显式优点:
1.隐藏了实现接口的类的实现代码
public Interface ICategory
{
string GetName();
}
接着实现上面定义的接口:
public class Category:ICategory
{
public string GetName()
{
return name;
}
}
以上的方式是隐式的实现接口(我们默认的都是使用隐式的接口)
显式的实现接口方式:
public class Category:ICategory
{
public string ICategory.GetName()
{
return name;
}
}
区别:
1. 隐式实现接口时,我们有两种方式调用实现接口的方法(GetName()),即:
ICategory category=new Category();
category.GetName();
和
Category category=new Category();
categoty.GetName();
2. 显式实现接口时,我们只有一种方法来调用GetName(),即:
ICategory category=new Category();
category.GetName();
结论:
1. 隐式实现接口时,接口和类(实现接口的类)都可以访问类中的方法;
2. 显式实现接口时,只有通过接口来访问类中的方法;
显式优点:
1.隐藏了实现接口的类的实现代码
相关文章推荐
- XMPP 连续注册出现用户限制:500错误 处理方式
- Android WebView加载本地html并实现Java与JS交互
- PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
- PostgreSQL的监控一(pgsnap & pgstatspack)
- Spring MVC 中的 forward 和 redirect
- WPF DataGrid常用属性记录
- Eclipse项目转Idea项目
- 去隔行利器FieldsKit Deinterlacer 解析
- 请求图片服务器
- 【phpBB 】style button dose not show on Admin control panel
- 测试员,敢问路在何方(三)
- 测试员,敢问路在何方(四)
- 升级xcode7.0 第三方库不能用的解决方法(bitcode是什么鬼?)
- c#导入文件
- bestcoder #56 div 2 C Clarke and puzzle (nim游戏 树状数组)
- MySQL之权限管理
- 理解 Linux 配置文件
- 开源项目: 带有语音和表情的输入控件
- CountDownLatch
- 我的shiro之旅: 十四 shiro 自动登录