Identificando objeto

Bom dia pessoal, tentando fazer esse exercicio da apostila caelum f11, o ecercicio pede para colocar uma identificador no código:

(opcional) Adicione um atributo na classe Funcionario de tipo int que se chama identificador. Esse identificador
deve ter um valor único para cada instância do tipo Funcionario. O primeiro Funcionario instanciado
tem identificador 1, o segundo 2, e assim por diante. Você deve utilizar os recursos aprendidos aqui para
resolver esse problema.
Crie um getter para o identificador. Devemos ter um setter?

Eu tentei usar o mesmo processo que está mostrando na apostila usando static, mas do meu jeito nao está dando certo, talvez seja a posição da variável no contexto do código, vou mostrar o código pra vcs

[code]class Funcionario {
private String nome;
private String depto;
private double salario;
private Data dataEntrada;
private String rg;
boolean estaNaEmpresa = true;

private static int identificador;

Funcionario() {
	Funcionario.identificador = Funcionario.identificador +1;
}

public int getIdentificador() {
	return Funcionario.identificador;
}


Funcionario(String nome) {
	this.nome = nome;
}

public String getNome() {
	return this.nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public String getDepto() {
	return this.depto;
}
public void setDepto( String depto) {
	this.depto = depto;
}
public double getSalario() {
	return this.salario;
}
public void setSalario(double salario) {
	this.salario = salario;
}
public Data getDataEntrada() {
	return this.dataEntrada;
}
public void setDataEntrada( Data dataEntrada) {
	this.dataEntrada = dataEntrada;
}
public String getRG() {
	return this.rg;
}
public void setRG(String rg) {
	this.rg = rg;
}	
void bonifica(double aumento) {
	this.salario += aumento;
}

void demite () {
	this.estaNaEmpresa=false;
	System.out.println("O Funcionario nao trabalha mais aqui");
}

void mostra() {
	System.out.println("Nome "+ this.nome);
	System.out.println("Departamento " + this.depto);
	System.out.println("Salario atual" + this.salario);
	System.out.println("RG " + this.rg);
	System.out.println("Esta na empresa: " + this.estaNaEmpresa);
	System.out.println("Dia: " + this.dataEntrada.dia);
	System.out.println("Mes: " + this.dataEntrada.mes);
	System.out.println("Ano: " + this.dataEntrada.ano);
	
}

}[/code]

[code]class TestaFuncionario {
public static void main(String[] args) {
int total = Funcionario.getIdentificador();
Funcionario f1 = new Funcionario(Tiririca);

	f1.setSalario(100);
	f1.setDepto("Administrativo");
	f1.bonifica(50);
	f1.setRG("46.625.423-4 SSP");
	
	Data dt = new Data();
	f1.setDataEntrada(dt);
	dt.dia = 1;
	dt.mes = 2;
	dt.ano = 10;

	f1.estaNaEmpresa = true;
	f1.mostra();
	
	System.println("Identificador :"+ getIdentificador()); 
	
	Funcionario f2 = new Funcionario(Jepeto);

	f2.setSalario(100);
	
	System.println(" Identificador :"+ getIdentificador()); 
			
	System.out.println("salario atual "+f1.getSalario());
	if (f1.estaNaEmpresa==true) {
	System.out.println("Esta na empresa desde " + dt.dia +"/" + dt.mes + "/" + dt.ano);
	} else {
	System.out.println("Funcionario demitido");
	}

	if (f1 == f2) {
		System.out.println("Iguais");
	} else {
		System.out.println("Diferentes");
		}
	
}

}[/code]

Quando é criado o funcionario eu coloquei no código para que mostrasse o identificador,eu apenas quero que quando fosse criado o objeto que em seguida mostrasse o numero identificador dele, mas alguma coisa está errado, alguem pode me ajudar?

Onde exatamente está ocorrendo o problema? Coloque aqui a mensagem de erro, se houver.

Ele não está compilando, são 7 erros cannot find symbol

Cara, não tem como colar os erros aqui? Fica muito mais fácil para descobrir o que acontece.

Não é mais fácil copiar o código e tentar compilá-lo para ver o erro? Porque no prompt de comando eu nao consigo copiar.