Hoi, ik zal het probleem uitleggen. Stel er zijn 3 classes; class A , class B en class C.
Het probleem is nu dat ie niet goed doorgeeft of ikBenTrue waar of niet waar is voor elke client met een bepaald IP adres.
Stel ikBenTrue was op een gegeven moment true. Als het IP dan uit de database wordt gehaald, zou ikBenTrue dus false moeten worden, maar dat gaat dus niet.
Zie ik iets over het hoofd? Een tip zou welkom zijn
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
| class A { //initialisatie boolean ikBenTrue; C database; //Constructor public A() { ikBenTrue = false; database = new C(); //een verwijzing naar een MySQL db waar een IP gecheckt wordt } public void a(Socket socket) { //als socket een IP heeft die in de MySQL db voorkomt moet ie ikBenTrue = true maken //heeftJuisteIpAdres is een boolean functie ikBenTrue = database.heeftJuisteIPadres(socket.getInetAddress().getHostAddress()); } } //En class B bevat een stukje code: class B { //Initialisaties private boolean isWaar; A a; //Constructor public B() { isWaar = false; a = new A(); } public void run() //de run methode, heb alle overbodige code weggelaten { //blah blah, nu komt de check isWaar = a.ikBenTrue; if(isWaar) { doeIets(); } else { doeIetsAnders(); } } } |
Het probleem is nu dat ie niet goed doorgeeft of ikBenTrue waar of niet waar is voor elke client met een bepaald IP adres.
Stel ikBenTrue was op een gegeven moment true. Als het IP dan uit de database wordt gehaald, zou ikBenTrue dus false moeten worden, maar dat gaat dus niet.
Zie ik iets over het hoofd? Een tip zou welkom zijn