This (self) v generikách

Tohle byl pro mě nějakou dobu oříšek, než jsem narazil na pár článků s překvapivým - ne dokonalým, ale přeci jen nějakým řešením.

Problém je jednoduchý, chtěl bych aby bylo možné v nějaké abstraktní třídě definovat cosi jako:

/** poznámka: toto je nesmysl, ale vyjadřuje moji snahu o vyjádření vazeb **/  

abstract class AbstractClass<T is this> {

T getMe();  

}

Což jsem potřeboval z důvodu získání reference na AOP proxy obalující moji třídu - v níže uvedených odkazech podobná potřeba vznikla při implementaci builder patternu.

Hezké řešení pro tento problém neexistuje, ale je možné napsat generickou vazbu, která podobný zápis umožní ...

Diskuzní příspěvky
Zatím zde nejsou žádné zprávy