/* * Olio-ohjelmoinnin perusteet I. * * Laatikkoa mallintava luokka. Laatikko voi sisältää minkä tahansa * tyyppisen olion monimuotoisuuden ansiosta: attribuutin tyyppi on Object, * joka kanssa mikä tahansa luokkatyyppi on yhteensopiva. * * Jorma Laurikkala (jorma.laurikkala@tuni.fi). * * Viimeksi muutettu 4.2.2020. * */ public class Laatikko { // Viite laatikon sisältöön. private Object sisältö; /* * Alustaa uuden laatikon sisällöksi uuden olion, jos olio on olemassa. * Heittää IllegalArgumentException-poikkeuksen, jos uusi olio on hukassa. */ public Laatikko(Object uusiSisältö) throws IllegalArgumentException { sisältö(uusiSisältö); } /* * Palauttaa viitteen laatikon sisältämään olioon. */ public Object 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ö(Object uusiSisältö) throws IllegalArgumentException { if (uusiSisältö == null) { throw new IllegalArgumentException(); } sisältö = uusiSisältö; } }