Ohjelmointi 2 / 2009
123456789012345678901234567890123456789012345678901234567890 Kissa istuu puussa ja ihmettelee mualiman menoa
/* 01 */ 1234567890123456789012345678901234567890 /* 02 */ Kissa istuu puussa /* 03 */ ja ihmettelee /* 04 */ mualiman menoa
* <pre name="test">
* #THROWS CloneNotSupportedException
* #import demo.Int;
* #CLASSIMPORT
* TaulukkoGen<Int> luvut = new TaulukkoGen<Int>();
* luvut.lisaa(new Int(0)); luvut.lisaa(new Int(2));
* luvut.lisaa(new Int(99));
* ;@SuppressWarnings("unchecked")
* TaulukkoGen<Int> taul = (TaulukkoGen<Int>)luvut.clone();
* luvut.toString() === " 0 2 99";
* taul.toString() === " 0 2 99";
* luvut.get(1).set(3);
* luvut.toString() === " 0 3 99";
* taul.toString() === " 0 2 99";
* luvut.lisaa(new Int(2)); luvut.lisaa(new Int(5));
* luvut.lisaa(new Int(2)); luvut.lisaa(new Int(6));
* luvut.toString() === " 0 3 99 2 5 2 6";
* taul.toString() === " 0 2 99";
* taul.get(3).intValue() === 2; #THROWS IndexOutOfBoundsException
* luvut.poista(new Int(2));
* luvut.toString() === " 0 3 99 5 6";
* taul.toString() === " 0 2 99";
* </pre>
public class TaulukkoGen<TYPE extends Int> implements Cloneable
package demo;
import fi.jyu.mit.ohj2.*;
/**
* Esimerkki linkitetystä listasta,
* @author Vesa Lappalainen
* @version 1.0, 15.03.2003
*/
public class Koulu {
public static class Oppilas {
private String nimi;
private double keskiarvo;
private Oppilas seuraava;
public Oppilas(String nimi, double keskiarvo) {
this.nimi = nimi; this.keskiarvo = keskiarvo;
}
public String toString() {
return Mjonot.fmt(nimi,-22) + " keskiarvo: " +
Mjonot.fmt(keskiarvo,5,2);
}
}
private String luokka;
private int oppilaita;
private Oppilas ensimmainen;
private Oppilas viimeinen;
public Koulu(String luokka) { this.luokka = luokka; }
public void lisaa(Oppilas oppilas) {
}
public void tulosta(OutputStream os) {
PrintStream out = new PrintStream(os);
}
public void poistaKaikki() {
}
public static void main(String[] args) {
Koulu luokka = new Koulu("1b");
luokka.lisaa(new Oppilas("Ankka Aku",5.0));
luokka.lisaa(new Oppilas("Ankka Tupu",7.0));
luokka.lisaa(new Oppilas("Hiiri Mikki",9.0));
luokka.tulosta(System.out); // PIIRRÄ KUVA
luokka.poistaKaikki();
luokka.tulosta(System.out);
}
}