最近我一直在练习Java。我在一堂课上做了一个随机的键盘,而另一堂课叫做form。

我设法从另一个类中添加了键盘方法。

但是,当我尝试添加文本(System.out.println(“ text”);)时,它不允许我显示,并且如果我在外部包装器中添加它,则不会显示。

键盘类:

import java.util.Scanner;

class Keyboard {
   public static void main(String args[]){
      System.out.print("Enter your name... ");
      Scanner sc = new Scanner(System.in);
      System.out.println("Your name is " + sc.nextLine());

   }
}


FillInForm类问题1:

public class FillInForm {


    Keyboard j = new Keyboard();
    System.out.println("text"); <-------------- doesn't allow me. Why?


}


FillInForm类问题2:

public class FillInForm {


    Keyboard j = new Keyboard();
{
        System.out.println("text");  <---------Also doesn't work. Why?
    }
}


这只是为了练习,类和方法不必说得通。随机制作。我只想知道为什么我不能在名为“ FillInForm”的类中显示文本。

我知道这个问题很简单,但是有人可以帮我吗?谢谢。

最佳答案

将语句放在方法而不是类块中。作为声明,Keyboard声明可以存在于类块中,但不能存在于println语句中:

public class FillInForm {

    Keyboard j = new Keyboard();

    public void myMethod() {
       System.out.println("text");
   }
}


对于问题2,问题与您再次尝试在类块中放置非声明性语句的问题相同。

鉴于输入功能是static类的Keyboard主要方法,因此除非您希望将main用作FillInForm中的KeyBoard方法。 >类。如果是后者,则可以创建一个实例方法来访问Scanner中的功能。

09-25 23:40