A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 604840337 中级黑马   /  2016-3-23 23:59  /  661 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

interface HHH {
        public static final int x =10;
}interface JJJ {
        public static final int x =20;
}
class  Dog implements HHH,JJJ{
   public void show(){
   System.out.ptintln(x);
}
}
然后在主函数里创建对象 调用 show()方法 会出现什么情况?

6 个回复

倒序浏览
对x的引用不明确, HHH中的变量 x和JJJ中的变量 x都匹配,报错
回复 使用道具 举报
黄盖打周瑜 发表于 2016-3-24 01:21
对x的引用不明确, HHH中的变量 x和JJJ中的变量 x都匹配,报错

为什么会这样?
回复 使用道具 举报

不这样,你说方法调用的时候去找哪个X呢?
回复 使用道具 举报
monZhang 发表于 2016-3-24 12:00
不这样,你说方法调用的时候去找哪个X呢?

后续会不会在实际开发中遇到这样的问题?另 如果先让HHH继承JJJ 然后类实现HHH  打印x  会出现什么结果
回复 使用道具 举报
你去写这个代码吧。。直接编译不过。。。要system。out。print(HHH.x);这样才可以
回复 使用道具 举报
604840337 发表于 2016-3-24 13:13
后续会不会在实际开发中遇到这样的问题?另 如果先让HHH继承JJJ 然后类实现HHH  打印x  会出现什么结果 ...

开发会不会遇到不知道,但是你这样写肯定编译不过,如果让HHH继承JJJ  在实现HHH   打印X 时 会去子类中找(HHH中)是否有X 如果没有在到父类(JJJ)找。另外你的输出语句 println 写错了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马