以下是引用fuyu888在2005-4-15 17:29:17的发言:
接口本来是抽象的,打个比喻就象你到了一家饭店,别人要拿菜单给你看,这个菜单就是接口,接口的存在价值就在于可以在类中实现,在实现这个过程分几步
1.无缝对接 2功能映射 3访问
public interface Iin{void doing(); void doelse(); }
public class c:Iin//这一步是对接
{ public viod doing(){}//隐式映射
void Iin.doelse(){}//显式映射 }
比如现在我们要实现这两个方法
c mc=new c();mc.doing();//隐式访问 mc.doelse();//错误
也可以这样:
c mc=new c();
Iin in=mc;
in.doing();//显式访问隐式映射
但是对于显式映射,就只能显式访问 in.doelse();
mc.doing();//隐式访问 mc.doelse();//错误
为什么一个错,一个对阿
2个
的区别在哪里?