黑马程序员技术交流社区
标题:
为什么编译器将在"ball = new Ball("Football");"这里显示有错?
[打印本页]
作者:
杨海波
时间:
2012-6-1 22:15
标题:
为什么编译器将在"ball = new Ball("Football");"这里显示有错?
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() {
ball = new Ball("Football");
System.out.println(ball.getName());
}
}
作者:
陆建平
时间:
2012-6-1 22:26
public void play() {
ball = new Ball("Football");
System.out.println(ball.getName());
}
}
应该定义成:
Ball ball = new Ball("Football");
作者:
袁錦泰
时间:
2012-6-1 22:29
本帖最后由 袁錦泰 于 2012-6-1 22:36 编辑
package cn.yuanjintai.base;
interface Playable {
void play();
}
interface Bounceable {
void play();
}
interface Rollable extends Playable, Bounceable {
Ball ball = new Ball("PingPang");//<span style="color: Red;">public static final</span> 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() {
ball = new Ball("Football");
System.out.println(ball.getName());
}
}
复制代码
接口这一个部分你如果学得够扎实,这个问题就很容易解释.
被final修饰的变量是不可以在后面重新赋值的.
还有你的代码能不能写得整齐一点,谢谢合作.
作者:
杨海波
时间:
2012-6-1 22:54
哥们 不好意思 我是急了点 一下没忍住就发了出去
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2