/
Forside
/
Teknologi
/
Udvikling
/
Java
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
Java
#
Navn
Point
1
molokyle
3688
2
Klaudi
855
3
strarup
740
4
Forvirret
660
5
gøgeungen
500
6
Teil
373
7
Stouenberg
360
8
vnc
360
9
pmbruun
341
10
mccracken
320
Initialisering af variable
Fra :
Mikael Flensborg
Dato :
09-02-05 15:50
Følgende eksempel havde jeg noget bøvl med i min kode. (Indtil jeg fandt
ud af hvad der foregik)
public class Example {
private abstract static class Super {
protected int foo = 0;
protected Super() {
toBeOverWritten();
}
protected abstract void toBeOverWritten();
}
private static class Sub extends Super {
String test = null;
public Sub() {
super();
toBeOverWritten();
System.out.println("" + foo);
}
protected void toBeOverWritten() {
if (test == null) {
test = "TEST";
foo++;
}
}
}
public static void main(String[] args) {
new Sub();
}
}
Hvad tror i resultatet bliver af denne kørsel.. Og hvad mon resultatet
bliver hvis jeg ændrer "String test = null" til en ren erklæring (String
test).. Jeg forstår egentlig godt semantikken. Og forstår også godt
hvorfor man nu ikke kan kalde kode inden man kalder super
constructeren.. Men jævnfør tidligere diskussion om hvorvidt
nullificering af ens variable i erklæringen betyder noget, kan hermed
vises at det er tilfældet ...
/Mikael
Søg
Alle emner
Teknologi
Udvikling
Java
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177580
Tips :
31968
Nyheder :
719565
Indlæg :
6409079
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.