Scanner в каждом классе - рационально ли?

Возник такой вопрос. Имеется 5 классов + Main. В классе Main идёт объявление потока ввода-вывода Scanner scanner = new Scanner(System.in), чтобы получать значения, введенных с клавиатуры пользователем. Во всех классах существуют методы, в которых необходимо использовать Scanner.

Вопрос: как лучше всего использовать Scanner?

  • Первый метод:

объявить его в каждом классе

  • Второй метод:

или при вызове метода определенного класса из класса Main, в этом методе прописать передаваемым значением Scanner вот так:

class Building{

    public int setValue(Scanner scanner){
        // code
    }
}

Ответы (1 шт):

Автор решения: VincentVega

Так как создание объекта всегда ресурсоемкая операция лучше использовать пример номер 2, но Вы можете действовать на Ваше усмотрение.

→ Ссылка