Pro interface jsou rezervována všechna přídavná jména. Co na tom nechápeš?
Mě je to jasné již dávno. Pokud nezavedeš předpisy na tvorbu identifikátoru, tak nepoznáš zda se jedná o interface.
Rozdíl je prakticky jenom v tom, že tvůj předpis je "able" a u sousedů mají předpis "I". Lingvistické záležitosti mě nezajímají.
Ale to je přece nesmysl. Někdo (snad sadsa) na začátku uvedl nějaký příklad, ty ses toho chytil a udělal z toho konvenci. Ale tak to vůbec není!
Jméno pro interface má vyskytovat jeho funkci. Ano, v Javě jsou _v_některých_případech_ přídavná jména jako Serializable, Cloneable či Iterable, ale pouze tam, kde dávají smysl. Například Iterable identifikuje objekt, který je Iterovatelný. Ale List je rovněž interface a identifikuje objekt, který se chová jako seznam a je to podstatné jméno, protože seznam je podstatné jméno. Když půjdem do spring, je tam BeanFactory, který je interface a poskytuje funkce, které by člověk od správy fazolek. Je tam interface ApplicationContextAware, což je přídavné jméno, přeloženo jako být znalý aplikačního kontextu. Takže to není žádné dogma, používá se název, který vystihuje funkci.
To je obrovský rozdíl oproti maďarštině, kde se tupě následuje pattern pro jméno, bez toho, aniž by měl jakoukoli přidanou hodnotu, naopak je většinou kontraproduktivní.