Como corrigir esse problema?

package basico;

public class Construtora 
{

	String nome;
	String CNPJ;
	Endereco endereco;
	Funcionario[]funcionarios;
	Obra[]obras;
	proxObra=0;
	
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getCNPJ() {
		return CNPJ;
	}

	public void setCNPJ(String CNPJ) {
		this.CNPJ = CNPJ;
	}

	public Endereco getEndereco() {
		return endereco;
	}

	public void setEndereco(Endereco endereco) {
		this.endereco = endereco;
	}

	public Funcionario[] getFuncionarios() {
		return funcionarios;
	}

	public void setFuncionarios(Funcionario[] funcionarios) {
		this.funcionarios = funcionarios;
	}

	public Obra[] getObras() {
		return obras;
	}

	public void setObras(Obra[] obras) {
		this.obras = obras;
	}

    public void adicionarObra(Obra novaObra){
     
    }
	
    public void buscarObra(String nomeObra){
		boolean achei =false;
		int p=0;
		Obra resultado =null;
		while(!achei&& p < proxObra){
			if(obra[p].getNome().equals(nomeObra)){
				achei=true;
			}
			p=p+1;
	}
	return resultado;
	
}

	public void cadastrarObra(Obra novoObra){
		if(prox< obras.length){
			obras[proxObra]=novoObra;
		}
		else{
			Obra []temp=new Obra[2 + obras.length ];
			for(int p =0;p< obras.length; p=p + 1){
				temp[p]=obras[p];
			}
			temp[prox]=novoObra;
			obras=temp;
		}
	}
}

Você tem que informar o problema, então, por favor coloque o seu problema mostrar um código e não dizer qual é o problema fica complicado para responder

Então,

  1. Qual ou quais duvida(s) no seu código?
  2. Qual ou quais os problemas do seu código?

ok.