[Java lista] Class szintu tulajdonsag kenyszeritese compile-time

Böszörményi Péter zmblevlist at gmail.com
2009. Júl. 22., Sze, 20:28:29 CEST


On Wed, 22 Jul 2009 20:26:59 +0200, Tamás Sallai <gsashee at gmail.com> wrote:
> erzem. Inkabb olyasmi lenne a legjobb, ha lenne mondjuk @MustOverwrite
> metaannotacio, amit minden gyerekosztalyban felul kell irni. De sajnos
> meg nem talaltam ilyet.

Pedig letezik. Absztrakt fuggvenynek hivjak.

>
> sashee
>
> 2009/7/22 Kristof Jozsa <kristof.jozsa at gmail.com>:
>> az eredeti kérdésre aspectj, compile-time policy enforcement, pár sor.
>> tankönyvi példa:
>>
>> static aspect FlagNonFactoryCreation {
>>     declare error
>>     : call(Product.new(..)) && !within(ProductFactory+)
>>     : "Only ProductFactory can create Products";
>> }
>>
>> azt viszont nem látom h a játékos pénzét hogy látod compile-time ill  
>> miért
>> nem a goblin konstruktorába írod bele a feltételt, de goblinokhoz nem
>> értek..
>>
>> K
>>
>> 2009/7/22 sashee <gsashee at gmail.com>
>>>
>>> Sziasztok!
>>>
>>> Van arra valami mod javaban, hogy compile time legyen kenyszeritve
>>> classhoz tartozo tulajdonsag? Pl annotacio meglete vagy statikus
>>> metodus.
>>> Egy pelda a kerdeshez, igy szerintem konnyebben ertheto, hogy mit
>>> szeretnek:
>>> Van egy varos, benne lehet felvenni goblinokat. Goblinnak ara van, es
>>> csak akkor szeretnem peldanyositani, ha a jatekos tenyleg ki is tudja
>>> fizetni. Igy ha a karakterek ososztalyba teszek egy abstract int
>>> getAr() fv-t, akkor azt sajnos nem tudom meghivni, mivel amikor ezt
>>> ellenorizni szeretnem, akkor meg nincsen goblin peldanyom. Ezert
>>> jolenne egy olyan statikus metodus vagy annotacio, amelyik biztos,
>>> hogy letezik, igy reflectionnel mar meg lehetne nezni az arat
>>> barmelyik karakternek, es nem fordulhat az elo, hogy irok mondjuk egy
>>> orkot, es lefordul, de futas kozben pedig hibat dob.
>>> Talan a legjobb, amit eddig talaltam, az az Inherited metaannotacioval
>>> ellatni az absztrakt os egy annotaciojat, akkor legalabb mindig talal
>>> valamilyet, de igazabol en kenyszeriteni szeretnem a programozot, hogy
>>> ezt mindenkeppen felul kell biralnia.
>>> Ugy gondolom, hogy talan egy Factory-val lehetne megcsinalni jora,
>>> hogy lenne egy GoblinFactory, ami tudja az arat, valamint tud
>>> peldanyositani is, de en nem szeretnek mindig 2 osztalyt letrehozni,
>>> amikor igazabol 1 is eleg lenne.
>>>
>>> Tud esetleg erre vki vmi elegans megoldast?
>>>
>>> Koszi elore is
>>>
>>> sashee
>>> _______________________________________________
>>> Javalist mailing list
>>> Javalist at javagrund.hu
>>> http://javagrund.hu/mailman/listinfo/javalist
>>
>>
>> _______________________________________________
>> Javalist mailing list
>> Javalist at javagrund.hu
>> http://javagrund.hu/mailman/listinfo/javalist
>>
>>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist



-- 
Üdvözlettel,
Böszörményi Péter


További információk a(z) Javalist levelezőlistáról