2011-12-08 45 views
5

Farz edelim ki 1 temel sınıf ve türetilmiş bir sınıf var. Türetilmiş sınıf, temel sınıfın sahip olmadığı ek alanlara sahiptir.Süper sınıf üzerinden seri hale getirme/serileştirme

Daha sonra türetilmiş sınıfı başlatıp, temel sınıfın tanımına atayım. Nesneyi temel sınıf aracılığıyla serileştirip diziselleştirdiğimde ne olur? Örneğin

:

Class TypeA{ 
    int var1; 
} 

Class TypeB extends class TypeA{ 
    int var2; 
} 

Class X{ 
    public TypeA obj = new TypeB(); 
} 

şimdi "obj" tefrika halinde dahil olsun var2 yapar?

cevap

4

Evet, serileştirme, referansın türüne bağlı değildir (bu, obj, aslında bir referanstır, bu), başvurulan nesnenin türünde/sınıfında, hala TypeB. obj.getClass()'u çağırırsanız, TypeB.class döndürür ve seri hale getirme de budur.

+0

Bunu doğrulamak için seri hale getirebilir, seri hale getirebilir ve 'obj'' TypeB'ye atayabilirsiniz. – SteeveDroz

İlgili konular