Synlighet på metod
Jag har ett objekt (oA) av klass A, som innehåller ett objekt (oB) av klass B. I klass B finns en metod, mB1, som jag vill att klass A ska kunna anropa. Däremot vill jag inte att applikationen som skapat oA ska kunna anropa mB1, utan det måste göras genom att anropa en metod i klass A, mA1. Alltså:
// Så här vill jag kunna göra
oA.mA1(); // vilket i sin tur anropar oB.mB1();
// Så här vill jag inte att det ska gå att göra
oA.oB.mB1();
Observera att jag vill att man ska kunna anropa andra metoder i klass B direkt, exempelvis:
oA.oB.mB2(); // Tillåtet
Svara
Sv: Synlighet på metod
e inte det shadows ??
minns faen inte, men har ett exempel på maskinen hemma ...
Svara
Sv: Synlighet på metod
Om A och B är definierade i samma assembly, men klienten som använder A inte är det, så deklarerar du helt enkelt mB1() som internal.
internal void mB1() {}
MS
Svara