Prečo táto časť kódu vykazuje chybu pri kompilácii
public class Foo {
int a=5;
a=4;
}
odpovede:
6 pre odpoveď č. 1Jazyk Java umožňuje iba deklarácie členov na úrovni triedy, nie ľubovoľný kód.
Mať 4 priradené a
keď objekty Foo
sú vytvorené, mali by ste dať priradenie buď do konštruktora alebo do inicializačného bloku.
Toto je blok inicializátora:
public class Foo {
int a = 5;
{
a = 4;
}
}
Toto je konštruktér:
public class Foo {
int a = 5;
public Foo() {
a = 4;
}
}
1 pre odpoveď č. 2
Môžete definovať súkromné premenné a priraďovať im hodnoty, keď sú deklarované, ale ak chcete zmeniť ich hodnotu, musíte to urobiť v nejakej funkcii.
public class Foo{
int a = 5;
//Constructor
void Foo(){
a = 4;
}
//Normal Function
void Change(){
a = 4;
}
}
Dúfam, že to pomôže.