У меня возникли проблемы с запуском моей программы в интерактивном режиме.Невозможно выяснить, как ссылаться на объект сканера в другом классе
В одном из классов System.in
, изменяется для чтения из текстового файла, например, так:
public class mainClass
{
public static void main(String[] args)
{
...
try {System.setIn(new java.io.FileInputStream("foo.txt"));}
catch (java.io.FileNotFoundException e) {}
Scanner sc = new Scanner(System.in);
someClass instance = new someClass(sc);
...
}
}
Проблема, которую я имею в моем другом классе. Я не знаю, как назвать точку или ссылку на этот же сканер.
EDIT:
Хорошо так что мой класс принимает сканер в качестве аргумента. Есть ли способ вызвать эту переменную в методе позже?
public someClass (Scanner sc)
{
}
public void test(String a)
{
someClass.sc.nextLine();
}
Когда я пытаюсь что-то вроде этого, я получаю сообщение об ошибке, которое не может найти переменную sc.
Хорошо, поэтому мой класс принимает сканер в качестве аргумента. Есть ли способ вызвать эту переменную в методе позже? 'public someClass (Scanner sc) {}' 'public void test (String a) { someClass.sc.nextLine(); } ' Я получаю сообщение об ошибке, если попытаюсь назвать его таким образом. – mrT
@ user2840824 Обновите свой ответ с помощью нового кода. Прежде чем продолжить, прочитайте [java учебник по классам и объектам.] (Http://docs.oracle.com/javase/tutorial/java/javaOO/) –
Хорошо, что я обновил приведенный выше код и посмотрел на этот учебник сейчас , – mrT