Kas alamklass saab kutsuda vanema klassi konstruktorit?
Kas alamklass saab kutsuda vanema klassi konstruktorit?

Video: Kas alamklass saab kutsuda vanema klassi konstruktorit?

Video: Kas alamklass saab kutsuda vanema klassi konstruktorit?
Video: Полный курс React Query за час | TanStack Query v4 для начинающих 2024, Mai
Anonim

Ei a alamklass ei saa pärida konstruktorid oma superklassist. Konstruktorid on a erifunktsiooni liikmed klass kuna neid ei päri alamklass . Konstruktorid kasutatakse objektile kehtiva oleku andmiseks loomise ajal.

Kas konstruktorid on päritud, kas alamklass saab kutsuda vanema klassi konstruktorit?

"kutsuda" vanemklassi konstruktor lapses klass teil on alati vaja "super" märksõna. Konstruktorid ei ole liikmed, seega nad ei ole päritud kõrval alamklassid , kuid konstruktor superklassist saab välja kutsuda alamklass.

Tea ka, kuidas kutsuda vanemate klassi konstruktorit? Selleks, et käivitada a vanemkonstruktor , a helistama juurde lapsevanem ::_construct() lapse sees konstruktor on vajalik. Kui laps ei defineeri a konstruktor siis võib see olla päritud vanemate klass täpselt nagu tavaline klass meetod (kui see ei kuulutatud privaatseks).

Seejärel tekib küsimus, kas saame Java-s kutsuda alamklassi konstruktorit superklassi konstruktorist?

Sina ei saa helistama a alamklassi konstruktor alates superklassi konstruktor . Helistamine a konstruktor a alamklass sees konstruktor baasklassist ei ole võimalik. Sellel on erinevaid põhjuseid, kuid üks kas see on a konstruktor tuletatud klassist kõned , kaudselt või otseselt, a konstruktor baasklassist.

Kuidas alamklass kutsub esile oma ülemklassi konstruktori?

A alamklass võib olla selle oma isiklikud andmeliikmed, nii et a alamklass võib ka olla selle oma konstruktorid . Seega, kui a alamklass objekt on instantseeritud alamklass objekt peab ka automaatselt täitma ühe konstruktorid selle superklass . To helistama a superklassi konstruktor kasutatakse super märksõna.

Soovitan: