如何使扫描仪对象为静态



如何引用从静态方法(比如main())全局定义的Scanner对象。。也就是说,如何使Scanner对象成为静态对象。

程序(#用于参考我的问题):

import java.util.Scanner;
class spidy {
    Scanner input = new Scanner(System.in);             /*DECLARING SCANNER OBJECT OUTSIDE MAIN METHOD i.e Static method */

    public static void main(String args[]) {
        System.out.println("Enter a number");
        int n = input.nextInt();
    }
}

错误:非静态变量输入不能从静态内容中引用

如果我理解你的问题,那么你可以更改这个

Scanner input = new Scanner(System.in);

到(对所有其他类可见-您说全局

public static Scanner input = new Scanner(System.in);

或(对当前类可见-任何其他静态方法(在您的情况下为main()

private static Scanner input = new Scanner(System.in);

在解决静态初始化程序块上的问题时,我也遇到过类似的疑问。有一个简单的解决方案

写为:

static Scanner input = new Scanner(System.in);

代替:

Scanner input = new Scanner(System.in);

只需在Scanner类之前使用static关键字。

示例:

static Scanner scan=new Scanner(System.in);

通过使用扫描对象,我们可以参考代码中的任何位置

相关内容

  • 没有找到相关文章

最新更新