黑马程序员技术交流社区

标题: 这道程序有哪里出错了么? [打印本页]

作者: IT农民工的日常    时间: 2016-4-7 23:01
标题: 这道程序有哪里出错了么?
interface Playable {
    void play();
}
interface Bounceable {
    void play();
}
interface Rollable extends Playable, Bounceable {
  Ball ball = new Ball("PingPang");
}
class Ball implements Rollable {
    private String name;
    public String getName() {
        return name;
    }
    public Ball(String name) {
        this.name = name;        
    }
    public void play() {
        //x = 20;
        ball = new Ball("Football");
        System.out.println(ball.getName());
    }
}

作者: 荒丶    时间: 2016-4-8 07:38
ball = new Ball("Football");   引用申明不正确
作者: feng9639    时间: 2016-4-8 08:26

接口中的变量只能是常量,默认被public static final修饰,引用的地址值不能发生改变,而在实现类Ball的play()方法中试图改变引用的地址值,这是不允许的.
作者: 倚码可待    时间: 2016-4-8 09:24
这不是上一期周末题么?
作者: 白龙马大魔王    时间: 2016-4-8 09:48
就是引用的问题
作者: kcufow    时间: 2016-4-8 10:01
3楼解释的很好啊
作者: 马儿不吃草    时间: 2016-4-8 11:40
简单地说接口是不能创建对象的
作者: lidandan    时间: 2016-4-8 12:07
我也想知道正确答案




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2