private static double champMIN=0.0, champMAX=100.0;
  void setChamp(double champ) {
    if (champ < champMIN) 
      this.champ = champMIN;
    else if (champ > champMAX)
      this.champ = champMAX;
    else
      this.champ = champ;
  }
Comme autre exemple, il y a des situations où le nombre de fois qu'un champ est modifié doit être limité (par exemple, la zone d'un lecteur de DVD peut être changée au plus 5 fois) : un champ supplémentaire, évidemment privé, et initialisé implicitement à 0, permet de contrôler le nombre de modifications.
  private static final int N = 5;
  private int champModifié;
  void setChamp(int champ) {
    if (champModifié<N) 
      this.champ = champ;
      champModifié++;
  }
Tous ces exemples constituent des patterns, c'est-à-dire des solutions typiques à des problèmes qui se rencontrent fréquemment, et qui peuvent être adaptées à chaque problème.