- lkristóf: Prohardver fórum userscript – hogy lásd, mikor neked válaszoltak
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- mefistofeles: Az elhízás nem akaratgyengeség!
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
Új hozzászólás Aktív témák
-
BaLinux
tag
Nyugodtan

Bár úgy látom, hogy a kérdéseidre kifejtettem már a választ, csak nem pont ezekkel a példákkal... na lássuk:
1. A hiba valóban az, hogy oda kell a static, ugyanis (ahogy már leírtam): tetszőleges osztályban definiált static függvény osztálypéldány nélkül hívható. Ez azt jelenti, hogy nem tud hozzáférni (nem ''látható'' a függvény törzséből) semmilyen nem-static osztályváltozó. A nem-static belső osztályokra ez a szabály azért vonatkozik (tehát nem tud létrehozni olyan belső osztály típusú objektumot), mert a nem-static belső osztályok példányainak alapból rendelkezniük kell referenciával a külső osztályuk (amiben definiáltad a belső osztályt) egy példányára. Méghozzá pontosan arra, amely teremtette őket.
A belső osztály példány referenciája a külsőre úgy néz ki, hogy A.this (ha A a külső osztály neve). Remélem összeállt...
2. két lehetőség: nem kell static a B osztály elé, vagy éppen static kell az int a elé.
A szabály ugyanaz, mint az előbb: mivel a belső osztály statikus, nem kötődik külső oszályhoz, így a belső példány nem is rendelkezik információval (referenciával) az ő bennfoglaló objektumáról, ami ha a staticot eltöröljük, az A osztály egy példánya lenne.
Így a
a = aa;
sorban nem tud hozzáférni az 'a' változóhoz, ugyanis a szimbólumtáblázat látható részében (hogymondják szépen magyarul azt, hogy scope?
) nincs ilyen változó!
Ugye amikor azt írod hogy 'a', ebben az esetben prioritási sorrendben így tud feloldódni a jelentése:
1) lokális blokkban ({ } közötti utasítások) lévő változók
2) szülő blokkban lévők
3) rekurzívan a függvény fejlécig, itt a fgv paraméterek jönnek be
4) osztályváltozók (ez az ami ilyen bonyi szabályokkal írható le, ahogy eddig tettem)
Az utóbbinál az 'a' szimbólum ekvivalens a 'this.a'-val, amennyiben a belső rendelkezik nem-static 'a' nevű változóval; továbbá ekvivalens 'Belsoosztaly.a'-val, ha rendelkezik static 'a' nevű változóval.
Van egy ''5.'' szint, amennyiben egy belső osztályban használt változóról van szó. Ilyenkor az 1-es ponttól oldjuk fel ismét rekurzívan attól a helytől kezdve, ahol az osztályt definiáltad... így lesz az 'a'-ból 'Kulsoosztaly.this.a', ha a belső osztály nem static és a a Kulsoosztaly rendelkezik nem static 'a' változóval, a static szintaxis meg egyenlő a fentivel, tehát a 'Kulsoosztaly.a' static(!) változó mindenhonnan hozzáférhető, akár static, akár nem a belső osztály.
Hmmm... remélem érthető
[Szerkesztve]
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Házimozi belépő szinten
- lkristóf: Prohardver fórum userscript – hogy lásd, mikor neked válaszoltak
- Minden út Palindrómába vezet: leépítésekkel tér vissza a Realme a gyökereihez
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- Horgász topik
- Arc Raiders
- 3D Studio Max
- Ez vár ránk a Star Trek: Voyager - Across the Unknown-ban
- Francia ügyészek razziáztak az X párizsi irodájában, Muskot is beidézték
- Snowboard topic
- További aktív témák...
- Getac S410 katonai laptop eladó (Intel I5 6300U 4X2,4Ghz, 16GB DDR4, 1TB SSD, jó akku)
- X13 Yoga Gen4 13.3" FHD+ IPS érintő i7-1355U 16GB 256GB NVMe IR kam aktív toll gar
- Workstation? Gamer PC? Netezős irodai konfig? YOU NAME IT!
- Dell Latitude 9420 i5-1145G7 14" FHD+ 16GB 512GB 1 év garancia
- ÚJ 5G LTE! Microsoft Surface Pro 8 i7-1185G7 16GB 512GB 1 év garancia (Microsoft + MalakCare)
- Samsung Galaxy A41 64GB, Kártyafüggetlen, 1 Év Garanciával
- Akció! Bontatlan Sandisk Ultra 3D SSD 2TB
- Azonnali készpénzes AMD CPU AMD VGA számítógép felvásárlás személyesen / postával korrekt áron
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
- Bomba ár! Dell Latitude 5410 - i5-10GEN I 16GB I 512SSD I HDMI I 14" HD I Cam I W11 I Garancia!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

) nincs ilyen változó!

