Hi!
Im folgenden Quelltext sollen für jede Variable mit dem Bezeichner a die Zeilen markiert werden in denen sie sichtbar ist. Ich weiß allerdings nicht genau wie das gemeint ist. Ist a in der Class Ueberdecken nicht über all sichtbar, weil sie als static deklariert ist? Kann mir jemand von euch sagen wo a sichtbar ist, oder woran ich erkenne wo sie sichtbar ist?
[HIGHLIGHT="Java"]
class Ueberdecken {
static int a = 7;
static void methode1() {
System.out.println("Methode 1");
System.out.println("a=" + a);
int a = 10;
System.out.println("a=" + a);
}
static void methode2(int a) {
System.out.println("Methode 2");
System.out.println("a=" + a);
a = a + 2;
System.out.println("a=" + a);
}
static int methode3() {
System.out.println("Methode 3");
System.out.println("a=" + a);
a++;
if (a > 7) {
int a = 3;
System.out.println("a=" + a);
}
System.out.println("a=" + a);
return a;
}
public static void main(String[] args) {
methode1();
methode2(a);
a = 1 + methode3();
System.out.println("a=" + a);
}
}
[/HIGHLIGHT]
Im folgenden Quelltext sollen für jede Variable mit dem Bezeichner a die Zeilen markiert werden in denen sie sichtbar ist. Ich weiß allerdings nicht genau wie das gemeint ist. Ist a in der Class Ueberdecken nicht über all sichtbar, weil sie als static deklariert ist? Kann mir jemand von euch sagen wo a sichtbar ist, oder woran ich erkenne wo sie sichtbar ist?
[HIGHLIGHT="Java"]
class Ueberdecken {
static int a = 7;
static void methode1() {
System.out.println("Methode 1");
System.out.println("a=" + a);
int a = 10;
System.out.println("a=" + a);
}
static void methode2(int a) {
System.out.println("Methode 2");
System.out.println("a=" + a);
a = a + 2;
System.out.println("a=" + a);
}
static int methode3() {
System.out.println("Methode 3");
System.out.println("a=" + a);
a++;
if (a > 7) {
int a = 3;
System.out.println("a=" + a);
}
System.out.println("a=" + a);
return a;
}
public static void main(String[] args) {
methode1();
methode2(a);
a = 1 + methode3();
System.out.println("a=" + a);
}
}
[/HIGHLIGHT]