Não consegui manipular o array de objetos encapsulado pra private. Já que não posso criar objetos:
public static void main(String[] args){
Empresa empresa = new Empresa();
Funcionario f1 = new Funcionario();
empresa.funcionario = new Funcionario[5];
//...
Resposta do javac:
Arrays.java:101: error: funcionario has private access in Empresa
empresa.funcionario = new Funcionario[5];
^
1 error
obs: na class Empresa o array de classe Funcionario está:
private Funcionario[] funcionario;