1   package kanta;
2   
3   /**
4    * Peruskenttä joka implementoi kysymyksen käsittelyn
5    * ja tarkistajan käsittelyn.
6    *
7    * @author Vesa Lappalainen
8    * @version 1.0, 22.02.2003
9    * @version 1.3, 02.04.2003
10   */
11  public abstract class PerusKentta implements Kentta { // NOPMD
12    private final String kysymys;
13    /** tarkistaja-olio */
14    protected Tarkistaja tarkistaja = null; /// ????
15  
16    /**
17     * Alustetaan kenttä kysymyksen tiedoilla.
18     * @param kysymys joka esitetään kenttää kysyttäessä.
19     */
20    public PerusKentta(String kysymys)  { this.kysymys = kysymys; }
21    
22    /**
23     * Alustetaan kysymyksellä ja tarkistajalla.
24     * @param kysymys joka esitetään kenttää kysyttäessä.
25     * @param tarkistaja tarkistajaluokka joka tarkistaa syötön oikeellisuuden
26     */
27    public PerusKentta(String kysymys,Tarkistaja tarkistaja) {
28      this.kysymys = kysymys;
29      this.tarkistaja = tarkistaja;
30    }
31  
32    /**
33     * @return kentän arvo merkkijonona
34     * @see kanta.Kentta#toString()
35     */
36    @Override
37    public abstract String toString();
38    
39    /**
40     * @return Kenttää vastaava kysymys
41     * @see kanta.Kentta#getKysymys()
42     */
43    public String getKysymys() { // NOPMD (jostain syystä luulee abstraktiksi metodiksi)
44      return kysymys; 
45    }
46    
47    /**
48     * @param jono josta otetaan kentän arvo
49     * @see kanta.Kentta#aseta(java.lang.String)
50     */
51    public abstract String aseta(String jono);
52   
53    
54    public String getAvain() { return toString(); }
55    
56  }
57  
58  
59  
60  
61  
62  
63