这一段代码怎么不报错呢?

问题遇到的现象和发生背景

遇到一道面试题,排错,两个接口有相同方法名

interface Playable {
    void play();
}

interface Bounceable {
    void play();
}

interface Rollable extends Playable, Bounceable {
    Ball ball = new Ball("PingPang");
}


public class Ball implements Rollable {
    private String name;

    public String getName() {
        return name;
    }
    public Ball(String name){
        this.name = name;
    }
    public void play(){
        //ball = new Ball("FootBall"); 注意小细节,这里的ball是定义在Rollable接口里面的,接口里面定义的数据是全局常量(public static final)这里不能再new一个新的对象给ball
        System.out.println(ball.getName());
    }

    public static void main(String[] args) {
        ball.play();
    }
}

运行结果及报错内容

运行结果:PingPang

我的解答思路和尝试过的方法

我只看出来了那个ball是不能再new了,但是我认为接口那里也有错,按道理编译器识别不出来啊,有两个相同方法名,编译器不知道我重写的哪一个方法,
使用idea点击查看重写的时候,这是把两个方法都一起重写了嘛?

img

我想要达到的结果

interface Roll extends Play, Bound是取了Play, Bound这两个接口的合集