Retornar um vetor de instancias

Como retornar um vetor de instancias para ser utilizado por outras funções?

Fiz um vetor de instancia de modo a guardar inúmeros objetos para utiliza-los posteriormente. Porém, não consigo retornar este vetor de instancias por inúmero erros na aplicação que o eclipse acusa.

Sei que a função é void. Gostaria de saber como mudá-la para int[]. Mas isso ocasionaria inúmeros erros como na criação do: estagiario [] estagiarios = new estagiario[qtd_funcionarios];

Como faço para retornar o vetor “estagiarios”?

public class empresa {

//Adiciona Funcionarios
public void adicionaFuncionarios() {
	System.out.println("Qual funcionario deseja adicionar? ");
	System.out.println("1 - Estagiario");
	System.out.println("2 - Secretaria");
	System.out.println("3 - Gerente");
	System.out.println("4 - Presidente");
	
	Scanner opcao = new Scanner(System.in);
    int menu = Integer.parseInt(opcao.nextLine());
    
    
    System.out.println("Quantos funcionarios deseja adicionar? ");
    Scanner opcao2 = new Scanner(System.in);
    int qtd_funcionarios = Integer.parseInt(opcao2.nextLine());
	
	if (menu == 1) {
		estagiario [] estagiarios = new estagiario[qtd_funcionarios];
		for (int i = 0; i < qtd_funcionarios; i++) {
			System.out.println("Adicione o ID: ");
			Scanner id_estag = new Scanner(System.in);
	        int ID = Integer.parseInt(id_estag.nextLine());
			
			System.out.println("Adicione o nome: ");
			Scanner nome_estag = new Scanner(System.in);
            String nome = nome_estag.nextLine();
            
            System.out.println("Adicione o Salario: ");
            Scanner salario_estag = new Scanner(System.in);
            double salario = Double.parseDouble(salario_estag.nextLine());
            
            System.out.println("Adicione o Vale Coxinha: ");
            Scanner coxinha_estag = new Scanner(System.in);
            double vale_coxinha = Double.parseDouble(coxinha_estag.nextLine());
			
            if (estagiarios[i] == null) {
                estagiarios[i] = new estagiario(ID, nome, vale_coxinha, vale_coxinha);
            }	
		}
	}

}

Comece renomeando as classes “empresa” e “estagiario” para “Empresa” e “Estagiario”. Essa é a convenção do Java.

Para retornar um array de Estagiario a assinatura do método seria:

public Estagiario[] adicionaFuncionarios() {
//Código
}