» »

Android studio opozorilo ob castanju generika

Android studio opozorilo ob castanju generika

KernelPanic ::

Spostovane dame in gospodje!

Imam sledec del kode:
@Override
public void onDataChange(
    @NonNull
    final DataSnapshot snapshot)
{
    entities.clear();

    for(DataSnapshot entity : snapshot.getChildren())
    {
        if((entity!=
            null)&&
            (entity.getValue()!=
            null))
        {
            final Object entityObject=entity.getValue();

            if(entityObject instanceof Class)
            {
                final Class<? extends BaseEntity> entityRecord=(Class<? extends BaseEntity>) entityObject;

                entities.add(entityRecord);
            }
        }
    }
}

V vrstici:
final Class<? extends BaseEntity> entityRecord=(Class<? extends BaseEntity>) entityObject;

imam sledec warning:
Unchecked cast: 'java.lang.Object' to 'java.lang.Class<? extends BaseEntity>'

Ce pravilno razumem (ce ne, me prosim popravite), v zgornjem if stavku napacno preverjam, ce je doticni objekt instanca BaseEntity. Kako to popravim, da bom vedno preverjal tip in da ta warning izgine?

P.S.:
Koda je Java in gre se za operacijski sistem Android OS.

S spostovanjem in vnaprej hvala za pomoc,
M.

eEdbM ::

SuppressWarning("unchecked") - saj ti bo razpadlo, ce bo kaj narobe

KernelPanic ::

eEdbM je izjavil:

SuppressWarning("unchecked") - saj ti bo razpadlo, ce bo kaj narobe
Ok, hvala, ampak nocem, da razpade ... Rad bi preveril tip, preden dodajam ...

eEdbM ::

isAssignableFrom() pomaga? ko resis z globoko Refleksijo, pridi povedat :D

KernelPanic ::

eEdbM je izjavil:

isAssignableFrom() pomaga? ko resis z globoko Refleksijo, pridi povedat :D

Mi lahko prosim podas primer?

eEdbM ::

Zdaj pa si me nasel na ravnini... poskusi v tem smislu

    if (BaseEntity.class.isAssignableFrom(entityObject.getClass())) {
...
}


samo opozorila bos verjteno moral zatireti kljub temu, ker dodelitev se ne zaveda opravljenega pogoja...


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Raspberry Pi + Home Assistant (strani: 1 2 3 4 5 )

Oddelek: Strojna oprema
21938215 (5053) fulgur
»

Entity framework 6 database first

Oddelek: Programiranje
361585 (494) acookook
»

[JAVA] HTTPS client

Oddelek: Programiranje
173177 (1907) peterv6i
»

Predstavitev dvojiškega drevesa z seznamom

Oddelek: Programiranje
141938 (1538) ktka
»

[c#] loopanje po fieldih classa

Oddelek: Programiranje
81123 (950) vojko20

Več podobnih tem