/* * Viikkoharjoitus 2, tehtävä 2. * * Olio-ohjelmoinnin perusteet I, syksy 2020. * * Talvipakkasilla tarvittavaa ja muutenkin käytettyä vaatekappaletta mallintava * rikkonainen luokka. * * Jorma Laurikkala (jorma.laurikkala@tuni.fi). * */ public class Pipo { /* * Koon sallitut arvot julkisina luokkavakioina. * */ // Todella pieni. public static final String XXS = "XXS"; // Erittäin pieni. public static final String XS = "XS"; // Pieni. public static final String S = "S"; // Keskikoko. public static final String M = "M"; // Suuri. public static final String L = "L"; // Erittäin suuri. public static final String XL = "XL"; // Todella suuri. public static final String XXL = "XXL"; /* * Ilmentymäattribuutit. * */ // Pipon koko. private static String koko; /* * Rakentajat. * */ public Pipo(String uusiKoko) { koko(uusiKoko); } /* * Aksessorit. * */ public String koko() { return koko; } public void koko(String uusiKoko) { if (kokoOK(uusiKoko)) { koko = uusiKoko; } } /* * Apuoperaatiot. * */ /* * Palauttaa arvon true, jos uudeksi kooksi tarjottu arvo on tunnettu. */ private boolean kokoOK(String uusiKoko) { return uusiKoko != null && (uusiKoko.equals(XXS) || uusiKoko.equals(XS) || uusiKoko.equals(S) || uusiKoko.equals(M) || uusiKoko.equals(L) || uusiKoko.equals(XL) || uusiKoko.equals(XXL)); } }