【发布时间】:2016-03-21 17:28:52
【问题描述】:
public class Car {
static int model = 2005;
static String name = "corvert";
private String color;
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
static void show() {
System.out.println("model" + amodel + "name" + name + "color" + this.color);
}
}
此方法不适用于无法从静态上下文引用的错误非静态变量。
【问题讨论】:
-
好吧,鉴于不同的汽车可以有不同的颜色,但在静态方法中,您不在任何一辆汽车的上下文中,您期望打印哪种颜色? (我的猜测是,现在是修改
static含义的好时机 - 希望它会变得更加明显。) -
您还需要考虑将模型和名称更改为非静态。如果您希望它保持静态,为什么要将颜色设为非静态?
-
所有的汽车都是护卫舰吗?
-
是时候拿起你的 Java 书,重新阅读关于
static及其含义的章节了。
标签: java static non-static