Kann ich den Deklarationstyp für eine Variable in Java ändern?

8

F: Kann ich den Deklarationstyp für eine Variable in Java ändern?

Zum Beispiel

%Vor%

Aber die versuchte Kompilierung resultiert in der Nachricht:

%Vor%

Seltsamerweise funktioniert die erneute Deklaration des Typs einer Variablen in einer interaktiven DrJava-Sitzung problemlos:

%Vor%

Was ist los?

    
lowndrul 23.11.2014, 17:52
quelle

4 Antworten

6
  

Kann ich den Deklarationstyp für eine Variable in Java ändern?

Nein, der Compiler weiß, dass s bereits im selben Bereich existiert und vom Typ String deklariert ist.

Ich habe DrJava vorher noch nie benutzt, aber als interaktiver Interpreter kann es möglicherweise die erste Variable abgrenzen und sie durch die in der neuen Anweisung deklarierte ersetzen.

    
manouti 23.11.2014, 17:58
quelle
5

Variablennamen in einem Bereich sind festgelegt, daher können Sie nicht dieselbe Variable mit mehreren Typen verwenden. Sie können denselben Namen mit zwei verschiedenen Typen haben, aber in einem anderen Bereich. So unter Beispiel, wenn Sie in Betracht ziehen, ist in Ordnung, da wir Typ in zwei verschiedenen Umfang ändern. Ein Instanzenlevel und ein Second-Time-Methodenlevel.

%Vor%     
mprabhat 23.11.2014 17:54
quelle
3

Nein.

Aber Sie können so etwas versuchen

%Vor%

Aber willst du das wirklich? Es kann für die Leser wirklich verwirrend sein, wenn sich der Typ einer Variablen ändert.

    
Vincent 23.11.2014 18:06
quelle
3

Sie können die Deklaration einer Variablen nicht innerhalb desselben Bereichs ändern.

Da alles in Java ein Objekt ist, kannst du es auch als Objekt deklarieren und es zu allem machen, was du willst ...

Wenn drjava es Ihnen erlaubt, die Variable innerhalb desselben Bereichs neu zu deklarieren, ist ihr Verhalten ungerade. Melden Sie den Fehler.

Dieser Code sollte funktionieren:

%Vor%     
Costis Aivalis 23.11.2014 18:47
quelle

Tags und Links