Java 私有静态文件的使用

Java 私有静态文件的使用,java,static,private,Java,Static,Private,你能找到这个错误的来源吗 然后netbeans有一个自动更正,导致: package calc; import java.util.Scanner; public class Calc { private static char ans; 它添加了一个“私有静态字符”,我想进一步了解它是如何修复我的代码的。感谢ans在do{…}while()循环中定义,但必须在循环外部定义,以使其可用于while中的条件 我们也要这样做: char ans = 0; do { Calc

你能找到这个错误的来源吗

然后netbeans有一个自动更正,导致:

package calc;

import java.util.Scanner;

public class Calc {

    private static char ans;

它添加了一个“私有静态字符”,我想进一步了解它是如何修复我的代码的。感谢
ans
do{…}while()
循环中定义,但必须在循环外部定义,以使其可用于
while
中的条件

我们也要这样做:

char ans = 0;
do {
    Calc op = new Calc();
    Scanner scan = new Scanner(System.in);
    ans = 0;

如果在do while循环中声明
ans
,则不能在
while
的条件下使用它,因为它超出了范围。更好的解决方案是删除
静态
字段,改为声明
main
方法的本地变量:
字符ans
。声明
字符ans=0 >之前请考虑点<代码>最小< /代码>,其中状态:……-尽可能少使用代码,仍然产生相同的问题对不起,但答案更像:学习有效的java语法看起来如何。而不是仅仅键入内容,然后让IDE为您修复它;然后把超基本的东西变成一个问题。
char ans = 0;
do {
    Calc op = new Calc();
    Scanner scan = new Scanner(System.in);
    ans = 0;