Chr*_*ski 7 java static class access-modifiers
Sup人,我有一个简单但有问题的问题.据我所知,static基本上意味着,对于该类的每个单个实例,此方法将是相同的,如果我们更改它,这将为该类的每个单个实例更改,它也称为类方法.好吧,如果我有一个实现toString ()某种格式的方法的类,那么让我们说:
public String toString() {
return "(" + x + "," + y + ")";
}
Run Code Online (Sandbox Code Playgroud)
为什么不能将其设置为静态?由于这种格式对于该类的每个实例都是相同的......?
因为静态方法无法访问实例字段.此外,toString()由java.lang.Object,指定,因此您必须具有要调用的Object实例toString().最后,如果toString()是静态的,它将不得不接受Object的实例(你怎么能在类的实例上调用toString()?).