Kan vi tilordne overordnet objekt til underordnede objekter i Java?
Kan vi tilordne overordnet objekt til underordnede objekter i Java?

Video: Kan vi tilordne overordnet objekt til underordnede objekter i Java?

Video: Kan vi tilordne overordnet objekt til underordnede objekter i Java?
Video: CS50 2013 - Week 9, continued 2024, April
Anonim

Foreldre og Barn klasser som har samme datamedlem i Java . Referansevariabelen til Foreldre klasse er i stand til å holde sin gjenstand referanse så vel som dens barneobjekt henvisning. Referansen som holder barn klasse gjenstand henvisning vil ikke ha tilgang til medlemmene (funksjoner eller variabler) til barn klasse.

I forhold til dette, kan et objekt av en underordnet type for eksempel tilordnes til en variabel av overordnet type?

Nei-men en gjenstand av foreldretype kan være tilordnet en variabel av barnetype.

kan vi tilordne superklasseobjekt til underklasse? Nei. Det gir null mening å tillate det. Grunnen er fordi underklasser generelt definere tilleggsatferd. Hvis du kan tildele en superklasseobjekt til en underklasse henvisning, du ville få problemer under kjøring når du prøv å få tilgang til klassemedlemmer som faktisk ikke eksisterer.

Spørsmålet er deretter, kan barneklassen lage objektet til overordnet klasse?

For å si det enkelt, Objekter fra foreldreklassen kan holde gjenstander av barneklasse . Det motsatte kunne ikke være sant.

Kan et objekt underklasse et annet objekt?

Kan an gjenstand av en underklasse tilgang beskyttet felt av et annet objekt av en annen underklasse ? Det er imidlertid tider når du vil begrense en metode til underklasser bare eller, mindre vanlig, å tillate underklasse metoder for å få tilgang til et superklassefelt. I så fall erklærer du en klassefunksjon som beskyttet.

Anbefalt: