Takze kdyz lhs je Object a rhs je String, tak lhsClass bude Object.class a
rhsClass bude String.class.
lhsClass.isInstance(rhs) vrati true (tedy testClass = Object.class) a
!rhsClass.isInstance(lhs) je take true, tedy testClass = String.class.

To nejak neodpovida tomu, ze se "to prekastuje na spoločného predka".

Z.T.
-- 
Zdenek Tronicek
FIT CTU in Prague


Rastislav Siekel napsal(a):
> Veď preto tam ten Commons-Lang dáva takéto niečo:
>
> ...
>          Class lhsClass = lhs.getClass();
>          Class rhsClass = rhs.getClass();
>          Class testClass;
>          if (lhsClass.isInstance(rhs)) {
>              testClass = lhsClass;
>              if (!rhsClass.isInstance(lhs)) {
>                  // rhsClass is a subclass of lhsClass
>                  testClass = rhsClass;
>              }
>          } else if (rhsClass.isInstance(lhs)) {
>              testClass = rhsClass;
>              if (!lhsClass.isInstance(rhs)) {
>                  // lhsClass is a subclass of rhsClass
>                  testClass = lhsClass;
>              }
>          } else {
>              // The two classes are not related.
>              return false;
>          }
> ...
>
> Čiže si to prekastuje na spoločného predka a až potom porovnáva.
> Pravdupovediac som to moc neštudoval, po otestovaní s Hiberanate som
> zistil, že všetko beží ako má a odvtedy to "len" používam :-)
>
> R.
>
> ------------------------------------------------------------------------
> Ing. Rastislav Siekel
> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
> E-mail : <[email protected]> <mailto:[email protected]>
> Tel : 041/562 54 91
> Fax : 041/562 54 97
> Mobil : 0905 34 00 20
>
> On 4. 3. 2010 9:43, Lukas Barton wrote:
>> Jenom pozor, ze je v equals metode nutne pouzivat instanceof misto
>> getClass()==.
>> Hibernate tam totiz dava proxy a pak by to nefungovalo.
>>
>>   Lukas
>>
>> Rastislav Siekel wrote:
>>> Jakrta Commons-Lang a zatiaľ ma nesklamali.
>>>
>>> Rastislav "Bedo" Siekel
>>>
>>> ------------------------------------------------------------------------
>>> Ing. Rastislav Siekel
>>> Prosoft s.r.o., Kuzmányho 8, 010 01 Žilina, Slovakia
>>> E-mail : <[email protected]> <mailto:[email protected]>
>>> Tel : 041/562 54 91
>>> Fax : 041/562 54 97
>>> Mobil : 0905 34 00 20
>>>
>>> On 4. 3. 2010 6:54, Daniel Holešínský wrote:
>>>> Zdravim,
>>>>
>>>> pouzivam generator IDE (eclipse, idea). U Hibernate si ale musite
>>>> dat pozor na kolekce s atributem lazy - mimo session se jinak
>>>> potkate s vyjimkou
>>>>
>>>> org.hibernate.LazyInitializationException: failed to lazily
>>>> initialize a collection of role: ____, no session or session was
>>>> closed
>>>>
>>>> z pri jakemkoliv pouziti eaual a hashCode (za predpokladu, ze tato
>>>> kolekce je zahrnuta do vypoctu hashCode a vyhodnoceni equals)
>>>>
>>>> DH
>>>>
>>>> 2010/3/3 Ivan Polak <[email protected] <mailto:[email protected]>>
>>>>
>>>>     Ahojte,
>>>>
>>>>     mam otazku, co pouzivate na generovanie tychto 2 metod pre domain
>>>>     objecty v hibernate ? eclipse generovanie (Source/Generate
>>>>     hashCode()
>>>>     and equals() alebo pouzitie EqualsBuilder a HashCodeBuilder z
>>>>     projektu
>>>>     Jakarta Commons-Lang (http://
>>>>     commons.apache.org/lang/ <http://commons.apache.org/lang/> alebo
>>>>     nieco ine?
>>>>
>>>>     dakujem
>>>>
>>>>     Ivan
>>>>
>>>>
>>
>

Odpovedet emailem