在 Java 中,为什么不允许从静态方法中访问非静态变量,能否详细说明一下
4条回答 默认 最新
元气少女缘结神 2023-03-05 22:32关注静态变量属于类本身,在类加载的时候就会分配内存,可以通过类名直接访问;
非静态变量属于类的对象,只有在类的对象产生时,才会分配内存,通过类的实例去访问;
静态方法也属于类本身,但是此时没有类的实例,内存中没有非静态变量,所以无法调用。本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用
静态变量属于类本身,在类加载的时候就会分配内存,可以通过类名直接访问;
非静态变量属于类的对象,只有在类的对象产生时,才会分配内存,通过类的实例去访问;
静态方法也属于类本身,但是此时没有类的实例,内存中没有非静态变量,所以无法调用。