Java Scanner diferente para entrada de diferentes tipos

Imagine o seguinte scanario: Eu tenho um programa que solicita uma entrada inteira, seguida por uma entrada String.

int age=0;
String name;
Scanner sc = new Scanner(System.in);

System.out.print("Enter Age: ");
age = sc.nextInt();
System.out.print("Enter Name: ");
name= sc.nextLine();

Com os códigos Aobe, não tive a chance de inserir o nome. Normalmente, declararei 2 objetos do scanner da seguinte maneira:

int age=0;
String name;
Scanner sc = new Scanner(System.in);
Scanner sc2 = new Scanner(System.in);    //2nd Scanner object

System.out.print("Enter Age: ");
age = sc.nextInt();
System.out.print("Enter Name: ");
name= sc2.nextLine();                    //Using 2nd Scanner Object

Minha pergunta é: É necessário declarar vários objetos do scanner para aceitar entradas de tipos diferentes? Estou fazendo o caminho certo como acima?

Eu tenho essa pergunta em mente já há anos. (Várias perguntas no SO mencionam vários scanners, mas suas perguntas usaram apenas um objeto de scanner, por isso estou perguntando isso hoje.)

questionAnswers(5)

yourAnswerToTheQuestion