/* * Olio-ohjelmoinnin perusteet I. * * Laatikkoa mallintava luokka. Laatikko voi sisältää minkä tahansa tyyppisen olion, * koska attribuutin tyyppi on parametrisoitu. * * Jorma Laurikkala (jorma.laurikkala@tuni.fi). * * Viimeksi muutettu 4.2.2020. * */ public class Laatikko { // Viite laatikon sisältöön. private T sisältö; /* * Alustaa uuden laatikon sisällöksi uuden olion, jos olio on olemassa. * Heittää IllegalArgumentException-poikkeuksen, jos uusi olio on hukassa. */ public Laatikko(T uusiSisältö) throws IllegalArgumentException { sisältö(uusiSisältö); } /* * Palauttaa viitteen laatikon sisältämään olioon. */ public T sisältö() { return sisältö; } /* * Asettaa laatikon sisällöksi uuden olion, jos se on olemassa. * Heittää IllegalArgumentException-poikkeuksen, jos uusi olio on hukassa. */ public void sisältö(T uusiSisältö) throws IllegalArgumentException { if (uusiSisältö == null) { throw new IllegalArgumentException(); } sisältö = uusiSisältö; } }