E aí! Então, saca só: a gente coloca as classes Scanner e ConsumoApi dentro da classe Principal pra facilitar a vida. Assim, não precisamos ficar criando novas instâncias toda hora que chamamos um método. É tipo manter a casa arrumada, sabe?
Olha só esse código maneiro aqui embaixo. Usamos o Scanner pra pegar o que o usuário digita e o ConsumoApi pra pegar dados da API. Ambos são "chamados" uma vez e ficam disponíveis pra qualquer função dentro da classe Principal.
public class Principal {
private Scanner leitura = new Scanner(System.in);
private ConsumoApi consumo = new ConsumoApi();
private final String ENDERECO = "https://www.omdbapi.com/?t=";
private final String API_KEY = "&apikey=6585022c";
public void exibMenu(){
System.out.println("Fala aí! Digita o nome da série que quer procurar:");
var nomeSerie = leitura.nextLine();
var json = consumo.obterDados(ENDERECO + nomeSerie.replace(" ", "+") + API_KEY);
}
}
E sobre a parada da classe Principal ser "principal", é isso mesmo. Ela manda no rolê, é a que dita o ritmo. A classe "ScreenmatchApplication" tá lá, firme e forte, mas a Principal é a que comanda o show, sabe?