Galera o que ta errado no código abaixo??? eu criei uma classe data em que ela valída a data inserida, porém se eu inserir 29/02/07 ela aceita, o que não era para ser, pois ele era para aceitar apenas se o ano fosse bisexto... e ai alguem ajuda?
package Funcionário;
public class Data {
private int dia, mes, ano;
Data(int dia, int mes, int ano){
this.setDia(dia);
this.setMes(mes);
this.anoBisexto(ano);
}
void setDia(int dia){
if(dia>=31){
this.dia=01;
}
else{
if(dia<=0){
this.dia = 01;
}
else
this.dia = dia;
}
}
void setMes(int mes){
if(mes==01||mes ==03||mes ==05||mes ==07||mes ==8||mes ==10||mes ==12){
this.mes = mes;
}
else{
if(mes==04||mes ==06||mes ==9||mes ==11){
if(this.dia==31){
this.dia = 01;
}
this.mes = mes;
}
else{
if(mes==2){
if(this.anoBisexto(this.ano)){
if(this.dia>29){
this.dia = 01;
}
}
else{
if(this.dia>28){
this.dia = 01;
}
}
this.mes = mes;
}
else
this.mes = 01;
}
}
}
boolean anoBisexto(int ano){
if(ano<0){
this.ano = 0;
return true;
}
else{
this.ano = ano;
if(ano%4==0)
return true;
else
return false;
}
}
String ExibeData(){
String date = String.format("%d/%d/%d", this.dia, this.mes, this.ano);
return date;
}
}
