Class DataDeNascimento e validação de cpf

Pessoal, estou desenvolvendo um projeto de um programa para uma locadora… ai pensei em colocar algumas classes “Extras” para ser usada pela minha class Cliente, como a class DataDeNascimento que não permitiria por exemplo que o ano tivesse mais de 4 caracteres, e também uma classe para validar CPF. Só que não consegui um jeito de não permitir que o ano tivesse só até 4 números!
e gostaria de saber se alguém tem uma class para validação de cpf pronta ai
agradeço, abraços!

Ao inves de validar o tamanho do ano, pq vc nao valida o ano em si? Por exemplo, se for menos que 1900 ou maior que o ano atual, voce nao permite.

Rafael

Ta ai véio na integra o código feito e testado e de sobra o de cnpj também:

public class TestaCpfCnpj {
	
	private static final int[] pesoCPF = { 11, 10, 9, 8, 7, 6, 5, 4, 3, 2 };

	private static final int[] pesoCNPJ = { 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3,
			2 };

	private static int calcularDigito(String str, int[] peso) {
		int soma = 0;
		for (int indice = str.length() - 1, digito; indice >= 0; indice--) {
			
			
			digito = Integer.parseInt(str.substring(indice, indice + 1));
			soma += digito * peso[peso.length - str.length() + indice];
		}
		soma = 11 - soma % 11;
		return soma > 9 ? 0 : soma;
	}

	public static boolean isValidCPF(String cpf) {		;
		
		if ((cpf == null) || (cpf.length() != 11))
			return false;

		Integer digito1 = calcularDigito(cpf.substring(0, 9), pesoCPF);
		Integer digito2 = calcularDigito(cpf.substring(0, 9) + digito1, pesoCPF);
		return cpf.equals(cpf.substring(0, 9) + digito1.toString()
				+ digito2.toString());
	}

	public static boolean isValidCNPJ(String cnpj) {
	   
		if ((cnpj == null) || (cnpj.length() != 12))
			return false;

		Integer digito1 = calcularDigito(cnpj.substring(0, 12), pesoCNPJ);
		Integer digito2 = calcularDigito(cnpj.substring(0, 12) + digito1,
				pesoCNPJ);
		return cnpj.equals(cnpj.substring(0, 12) + digito1.toString()
				+ digito2.toString());
	}	
	
	
	
}

Falou