Difference between revisions of "Reintroduce/fi"
From Lazarus wiki
Jump to navigationJump to searchm |
|||
Line 1: | Line 1: | ||
{{Reintroduce}} | {{Reintroduce}} | ||
− | Määritettä ([[modifier]]) reintroduce käytetään olio-ohjelmoinnissa. | + | Määritettä ([[modifier/fi|modifier]]) <syntaxhighlight lang="pascal" inline> reintroduce </syntaxhighlight> käytetään [[object-oriented programming/fi|olio-ohjelmoinnissa]]. |
− | Määrite reintroduce mahdollistaa vanhemman (kanta) [[Class | luokan]] [[Method |metodin]] piilottamisen uudella metodilla, jolla on sama nimi. | + | Määrite <syntaxhighlight lang="pascal" inline> reintroduce </syntaxhighlight> mahdollistaa vanhemman (kanta) [[Class | luokan]] [[Method |metodin]] piilottamisen uudella metodilla, jolla on sama nimi. |
Toisin sanoen luokassa on nyt uusi metodi, joka on peräisin tästä luokassa. | Toisin sanoen luokassa on nyt uusi metodi, joka on peräisin tästä luokassa. | ||
− | + | Vanhemman luokan metodi säilyy ja sitä voi silti käyttää. | |
Kantaluokan metodia ei enää ole olemassa uudessa luokassa, vaan se on korvattu uudella metodilla, jolla on sama nimi. | Kantaluokan metodia ei enää ole olemassa uudessa luokassa, vaan se on korvattu uudella metodilla, jolla on sama nimi. | ||
− | Metodi säilyy alkuperäisessä muodossa | + | Metodi säilyy alkuperäisessä muodossa vanhemmassa luokassa ja sitä voidaan käyttää vanhemman luokan kautta. |
Esimerkki: | Esimerkki: | ||
− | + | <syntaxhighlight lang="pascal"> | |
+ | interface | ||
+ | |||
+ | type | ||
+ | TParentClass = class | ||
+ | procedure SetTest(intNum: Integer); // Jokin metodi | ||
+ | end; | ||
+ | |||
+ | TDerivedClass = class(TParentClass) | ||
+ | procedure SetTest(strName: String); reintroduce; // Tämä korvaa vanhemman luokan metodin. | ||
+ | end; | ||
+ | |||
+ | implementation | ||
+ | |||
+ | procedure TDerivedClass.SetTest(strName: String); | ||
+ | begin | ||
+ | inherited SetTest(1); // kutsutaan samalla nimellä vanhemman luokan metodia tarvittaessa | ||
+ | end; | ||
+ | |||
+ | </syntaxhighlight> |
Latest revision as of 12:26, 10 November 2019
│
Deutsch (de) │
English (en) │
Esperanto (eo) │
suomi (fi) │
français (fr) │
Määritettä (modifier) reintroduce
käytetään olio-ohjelmoinnissa.
Määrite reintroduce
mahdollistaa vanhemman (kanta) luokan metodin piilottamisen uudella metodilla, jolla on sama nimi.
Toisin sanoen luokassa on nyt uusi metodi, joka on peräisin tästä luokassa.
Vanhemman luokan metodi säilyy ja sitä voi silti käyttää.
Kantaluokan metodia ei enää ole olemassa uudessa luokassa, vaan se on korvattu uudella metodilla, jolla on sama nimi. Metodi säilyy alkuperäisessä muodossa vanhemmassa luokassa ja sitä voidaan käyttää vanhemman luokan kautta.
Esimerkki:
interface
type
TParentClass = class
procedure SetTest(intNum: Integer); // Jokin metodi
end;
TDerivedClass = class(TParentClass)
procedure SetTest(strName: String); reintroduce; // Tämä korvaa vanhemman luokan metodin.
end;
implementation
procedure TDerivedClass.SetTest(strName: String);
begin
inherited SetTest(1); // kutsutaan samalla nimellä vanhemman luokan metodia tarvittaessa
end;