Ano pletete se. Staticka promenna jak jiz z jejiho nazvu vyplyva je promennou. Konstanta se lisi pouzitim klicoveho slova final, coz zarucuje, ze nepujde zmenit a potom to ten case veme.
Jaroslav Hurdes Petr Burdik napsal(a):
Ahojda, doufam, ze jsem napsal co jsem chtel :) Mam tridu ReceivingRecordSearchCriterias ktera zacina takto: public class ReceivingRecordSearchCriterias { public static int SEARCH_BY_NONE = 0; public static int SEARCH_BY_OID = 1; public static int SEARCH_BY_INVOICE_INTID = 2; public static int SEARCH_BY_INVOICE_ID = 3; public static int SEARCH_BY_OTHERS = 4; protected int searchType = 0; ... }Kdyz chci pouzit konstantu ve switch, tak mi rve na tom, ze chce konstantu. Ale kdyz tam dam misto toho ReceivingRecordSearchCriterias.SEARCH_BY_OID primo integer jako cislo, vsechno je v pohode. Jaky je duvod proc to vlastne nejde. Vzdyt ta staticka promenna de-fakto konstantou je, nebo se pletu?switch(criterias.getSearchType()) { case 1: // ReceivingRecordSearchCriterias.SEARCH_BY_OID break; } Pet
