为什么特定类的静态方法不能引用类(对象)的同一实例和另一个类(对象)的实例?是什么原因?
我在教科书中读到这篇文章。
答案 0 :(得分:1)
因为static
可以在没有任何类实例的情况下使用。例如,当您使用Integer.parseInt(...)
时,您使用类Integer
的名称调用它,您从未创建过实例。
System.out.println(Integer.parseInt("123")); // Called with the name of the class
那么,如果您可以在static
方法中引用实例,该怎么办?如果用户使用类的名称调用它(不创建任何实例),则该方法将不会引用任何实例。
注意您也可以使用实例调用static
方法,但推荐的方法是使用类的名称调用它,以强调它是{{1方法:
static
答案 1 :(得分:0)
要哪个实例,static method(与任何实例没有关联)会引用哪个
?答案: none / undecidable ;它没有任何意义,因为可以有0..n个实例。
答案 2 :(得分:0)
只有在创建特定类的对象时才能访问实例方法。如果创建特定类的实例,静态方法只能访问实例方法。