public abstract class PerusTietue extends java.lang.Object implements java.lang.Cloneable, Tietue
public static class Harrastus extends PerusTietue { private Kentta kentat[] = { new IntKentta("id"), new IntKentta("jäsenId"), new JonoKentta("ala"), new IntKentta("aloitusvuosi"), new IntKentta("h/vko") }; private static int seuraavaNro = 1;
Constructor and Description |
---|
PerusTietue() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
anna(int k) |
int |
annaInt(int k)
Kentän sisältö kokonaislukuna.
|
java.lang.String |
aseta(int k,
java.lang.String s)
Asetetaan valitun kentän sisältö.
|
Tietue |
clone()
Tehdään identtinen klooni tietueesta
|
int |
ekaKentta() |
boolean |
equals(Tietue tietue)
Tutkii onko tietueen tiedot samat kuin parametrina tuodun tietueen tiedot
|
java.lang.String |
getAvain(int k)
Antaa k:n kentän sisällön avain-merkkijonona
jonka perusteella voi lajitella
|
Kentta |
getKentta(int k) |
int |
getKenttia() |
java.lang.String |
getKysymys(int k) |
java.lang.String[] |
getOtsikot() |
int |
getTunnusNro()
Palautetaan tietueen oma id
|
void |
parse(java.lang.String rivi)
Selvittää tietueen tiedot | erotellusta merkkijonosta.
|
int |
rekisteroi()
Antaa tietueelle seuraavan rekisterinumeron
|
protected abstract void |
setKentat(Kentta[] kentat)
Asetetaan kentät.
|
protected abstract void |
setSeuraavaNro(int i) |
java.lang.String |
toString()
Palauttaa tietueen tiedot merkkijonona jonka voi tallentaa tiedostoon.
|
void |
tulosta(java.io.OutputStream os)
Tulostetaan tietueen tiedot
|
void |
tulosta(java.io.PrintStream out)
Tulostetaan tietueen tiedot
|
void |
tulosta(java.io.PrintWriter out)
Tulostetaan tietueen tiedot
|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getKentat, getSeuraavaNro
public PerusTietue()
protected abstract void setSeuraavaNro(int i)
i
- seuraava id-numero jota tästä lähiten käytetäänprotected abstract void setKentat(Kentta[] kentat)
kentat
- uudet kentät tietueellepublic int getKenttia()
getKenttia
in interface Tietue
Harrastus har = new Harrastus(); har.getKenttia() === 5;
public int ekaKentta()
public java.lang.String getKysymys(int k)
getKysymys
in interface Tietue
k
- minkä kentän kysymys halutaanHarrastus har = new Harrastus(); har.getKysymys(2) === "ala";
public java.lang.String[] getOtsikot()
getOtsikot
in interface Tietue
#import java.util.Arrays; Harrastus har = new Harrastus(); Arrays.toString(har.getOtsikot()) =R= "\\[ala, aloitusvuosi, h/vko.*";
public java.lang.String anna(int k)
anna
in interface Tietue
k
- Minkä kentän sisältö halutaanHarrastus har = new Harrastus(); har.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); har.anna(0) === "2"; har.anna(1) === "10"; har.anna(2) === "Kalastus"; har.anna(3) === "1949"; har.anna(4) === "22";
public int annaInt(int k)
annaInt
in interface Tietue
k
- Minkä kentän sisältö halutaanHarrastus har = new Harrastus(); har.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); har.annaInt(0) === 2; har.annaInt(1) === 10; har.annaInt(2) === -1; har.annaInt(3) === 1949; har.annaInt(4) === 22;
public java.lang.String aseta(int k, java.lang.String s)
aseta
in interface Tietue
k
- minkä kentän sisältö asetetaans
- asetettava sisältö merkkijononaHarrastus har = new Harrastus(); har.aseta(3,"kissa") === "aloitusvuosi: Ei kokonaisluku (kissa)"; har.aseta(3,"1940") === null; har.aseta(4,"kissa") === "h/vko: Ei kokonaisluku (kissa)"; har.aseta(4,"20") === null;
public Tietue clone() throws java.lang.CloneNotSupportedException
clone
in interface Tietue
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
- jos kloonausta ei tueta#THROWS CloneNotSupportedException Harrastus har = new Harrastus(); har.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); Harrastus kopio = har.clone(); kopio.toString() === har.toString(); har.parse(" 1 | 11 | Uinti | 1949 | 22 t "); kopio.toString().equals(har.toString()) === false; kopio instanceof Harrastus === true;
public void tulosta(java.io.PrintWriter out)
public void tulosta(java.io.OutputStream os)
public void tulosta(java.io.PrintStream out)
public int rekisteroi()
rekisteroi
in interface Tietue
Harrastus pitsi1 = new Harrastus(); pitsi1.getTunnusNro() === 0; pitsi1.rekisteroi(); int n1 = pitsi1.getTunnusNro(); Harrastus pitsi2 = new Harrastus(); pitsi2.rekisteroi() === n1 + 1; int n2 = pitsi2.getTunnusNro(); n1 === n2-1;
public int getTunnusNro()
getTunnusNro
in interface Tietue
Harrastus harrastus = new Harrastus(); harrastus.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); harrastus.getTunnusNro() === 2;
public java.lang.String toString()
public void parse(java.lang.String rivi)
parse
in interface Tietue
rivi
- josta harrastuksen tiedot otetaanHarrastus harrastus = new Harrastus(); harrastus.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); harrastus.getJasenNro() === 10; harrastus.toString() =R= "2\\|10\\|Kalastus\\|1949\\|22.*"; harrastus.rekisteroi(); int n = harrastus.getTunnusNro(); harrastus.parse(""+(n+20)); harrastus.rekisteroi(); harrastus.getTunnusNro() === n+20+1; harrastus.toString() =R= "" + (n+20+1) + "\\|10\\|\\|1949\\|22.*";
public java.lang.String getAvain(int k)
getAvain
in interface Tietue
k
- monenenko kentän sisältö palautetaanHarrastus har = new Harrastus(); har.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); har.getAvain(0) === " 2"; har.getAvain(1) === " 10"; har.getAvain(2) === "KALASTUS"; har.getAvain(20) === "";
public boolean equals(Tietue tietue)
equals
in interface Tietue
tietue
- johon verrataanHarrastus har1 = new Harrastus(); har1.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); Harrastus har2 = new Harrastus(); har2.parse(" 2 | 10 | Kalastus | 1949 | 22 t "); Harrastus har3 = new Harrastus(); har3.parse(" 3 | 12 | Kalastus | 1949 | 22 t "); har1.equals(har2) === true; har2.equals(har1) === true; har1.equals(har3) === false; har3.equals(har2) === false;