Consigo aplicar Design Patterns?

Tenho as classes:

ClassePrincipal { 
  String atributo;
  String atributo;
  ClassePais atributo;
  ClasseOutroPais atributo;
  ClassePais2 atributo;
}
ClassePais {
  String datainicio;
  String datafim;
}
ClasseOutroPais {
  String datainicio;
  String datafim;
}
ClassePais2 {
  String datainicio;
  String datafim;
}

Preciso validar os atributos da ClassePrincipal :

if (ClassePrincipal.getClassePais.getDataInicio() != null) {
  valid = validaData(ClassePrincipal.getClassePais.getDataInicio());
}

if (ClassePrincipal.getClassePais.getDataFim() != null) {
  valid = validaData(ClassePrincipal.getClassePais.getDataFim());
}

Consigo aplicar algum design aqui para diminuir a quantidade de if/else, se sim qual a maneira, eu dei uma pesquisada sobre strategy mas não sei como aplicar nesse modelo.