- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Honor 200 Pro - mobilportré
- Fotók, videók mobillal
- Xiaomi 13 Pro - szerencsés szám
- Redmi Note 14 5G - jól sikerült az alapmodell
- Megvan a Xiaomi 17 és 17 Ultra európai ára
- Motorola Edge 60 Fusion - nem csak a forma időtálló
- Apple iPhone 13 Pro Max - őnagysága
- iPhone topik
Ú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?:))
- CPU léghűtés kibeszélő
- PROHARDVER! feedback: bugok, problémák, ötletek
- TCL LCD és LED TV-k
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- One otthoni szolgáltatások (TV, internet, telefon)
- A fociról könnyedén, egy baráti társaságban
- Elektromos (hálózati és akkus) kéziszerszámok, tapasztalatok/vásárlás
- Óvodások homokozója
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Téli Olimpiai játékok Milano - Cortina 2026
- További aktív témák...
- Eladó ASUS TUF 3080 RTX V2
- Bontatlan ÚJ IPAD PRO M2 M4 11 12,9 Wi-Fi és 5g cellular 128--512GB DEÁK TÉRNÉL Azonnal Átvehető.
- HP Prodesk 600 G4 // Core i5 8500T //16GB RAM // 256GB SSD//
- Apple iPhone 14 Pro Max 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Nintendo Switch Oled + 256 GB Sandisk SD Kártya + Fólia
- LG 55QNED823RE / QNED / 55" - 140 cm / 4K UHD / 120Hz & 4ms / HDR Dolby Vision / FreeSync + HDMI 2.1
- Mini Pc HP ProDesk 600 G2 / G4 / G5 Acer Vertion // 6-9. gen // i3 / i5 // garancia / Bp., MPL, Fox
- TELJES KÖRŰ IT BESZERZÉS
- 5G Lenovo ThinkPad P14s Gen 3 Intel Core i7-1280P Nvidia T550 32GB 1000GB 1 év teljeskörű garancia
- Honor Magic5 Lite / 6/128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

) nincs ilyen változó!

