Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Reflexie - Predpis triedy (Machr na OOP)

Tu je môj prvý výtvor, ktorý tu publikujem. Jedná sa o knižnicu (s hlavnou triedou Inspector) vytvorenú do súťaže Machr.

Jej účel je poskytnutie metódy, ktorá vypíše predpis zdrojového kódu triedy, vrátane dosadených hodnôt do premenných. Možnosti výpisu sú:

  • Do konzoly (OutputType.Con­sole)
  • Do súboru v priečinku AppData, identifikovaného pomocou mena triedy, dátumu a času (OutputType.File)
  • Ako String pre neskoršie použitie v kóde (napríklad pre vypísanie do textarea), cez návratový typ String, do metódy doplniť miesto OutputType null

Samotný objekt sa odovzdáva už v konstruktoru, aby s ním bolo možné pracovať viackrát. Taktiež je možnosť použiť priamo Class object miesto objektu. To sa hodí napríklad pre statické triedy.

Pokiaľ nastane chyba pri získavaní dát napríklad o metóde (môžeme naraziť na úplne ľubovoľné triedy, teda nemôžem mať úplne všetko ošetrené), tak program metódu preskočí a po skončení výpisu do konzoly vypíše hlášku o počte týchto výnimiek.

Kód môže pôsobiť veľmi neprehľadne vďaka všemožným úpravám string s cieľom previesť získaných dát do tej "čistej" jazykové syntaxe, preto je miestami opatrený komentármi, všetko je napísané v anglickom jazyku.

Som si istý, že je na ňom ešte veľa čo vylepšovať, ak niekoho niečo napadne, pokojne píšte do komentárov svoje postrehy:)


Galéria


 

Stiahnuť

Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami

Stiahnuté 46x (73.11 kB)
Aplikácia je vrátane zdrojových kódov v jazyku Java

 

Všetky články v sekcii
Zdrojákovisko Java - Objektovo orientované programovanie
Program pre vás napísal pocitac770
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje programování desktopových aplikací v jazyce Java/C#
Aktivity