[linux-support] OT: java frage
Markus Wernig
wernigm at lugbe.ch
Tue Nov 8 23:16:49 CET 2011
Sorry, das sollte natürlich
...
public class Eins extends Basis {
...
public class Zwei extends Basis {
...
heissen
On 11/08/11 23:08, Markus Wernig wrote:
> Hi all
>
> Ich habe ein (na, wahrscheinlich mehrere :-) grundsätzliches
> Verständnisproblem bei Java und seinen static/protected usw. Variablen.
>
> Wenn ich ein abstrakte Klasse definiere, von der dann konkrete Klassen
> abgeleitet werden sollen, möchte ich in diesem Fall eine ID mitführen,
> die für jede abgeleitete Instanz unique ist. Die Idee ist die folgende:
>
> public abstract class Basis
> {
> protected int id;
> private static int counter = 0;
>
> public void Basis(){
> counter++;
> id = counter;
> }
> ...
> }
>
> Ich hätte jetzt erwartet, dass counter mit jeder instantiierten
> abgeleiteten Klasse erhöht und id der entsprechenden Klasse darum erhöht
> wird:
>
> public class Eins {
>
> public Eins() {
> super();
> System.out.println(id);
> }
> ...
> }
>
> public class Zwei {
>
> public Zwei() {
> super();
> System.out.println(id);
> }
> ...
> }
>
> Das ganze dann woanders in einem main();
> ...
> eins = new Eins;
> zwei = new Zwei;
>
> Hätte ich jetzt den folgenden Output erwartet:
> 1
> 2
>
> Erhalte aber
> 0
> 0
>
> Kann mir evtl. jemand auf die Sprünge helfen?
>
> thx /markus
>
--
Markus Wernig
Präsident LugBE
GPG: CA558BF7
---------------------------------------------
Linux User Group Bern - http://lugbe.ch
---------------------------------------------
More information about the Linux-support
mailing list