/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
OOP stuff
Fra : mads Ny Larsen


Dato : 04-01-02 02:13

forstil jer at når man trykke med musen vil en lille animation afvikles på
musens X,Y.
den samme animation skal vises hver gang man trykker et eller andet sted
derfor vil jeg lave animationen som et objekt (da den indeholder masser af
forskellige udregninger).
men jeg kan ikke finde rundt i det med objekter.
hvis man definere et objekt inde i en {} høre det så kun hjemme der ??, vil
det også sige at det ikke kan blive ved med at holde værdier.

lille test eks.:

------------------------------------------------

import java.awt.*;

public class lines04 extends java.applet.Applet{

int x,y;

public void init(){
lines04 P1 = new lines04();
lines04 P2 = new lines04();
}

public void paint(Graphics g){
P1.x = 51;
P1.y = 55;
P2.x = 321;
P2.y = 134;

g.drawLine(P1.x, P1.y, P2.x, P2.y);
}
}

------------------------------------------------

er den eneste udvej for at placere flere punkter (p3, p4 osv.) ved at lave
en lang array med x og y.
hvordan laver man et objekt som man kan holde værdier og virke globalt.

taka.
///Mads





 
 
Torben Brandt (05-01-2002)
Kommentar
Fra : Torben Brandt


Dato : 05-01-02 00:20

"mads Ny Larsen" <mads@A-D.dk> wrote in message news:<3c3501c7$1$37998$edfadb0f@dspool01.news.tele.dk>...
> hvis man definere et objekt inde i en {} høre det så kun hjemme der ??, vil
> det også sige at det ikke kan blive ved med at holde værdier.
>
> lille test eks.:
>
> ------------------------------------------------
>
> import java.awt.*;
>
> public class lines04 extends java.applet.Applet{
>
3> int x,y;
>
> public void init(){
1> lines04 P1 = new lines04();
2> lines04 P2 = new lines04();
> }
>
> public void paint(Graphics g){
> P1.x = 51;
> P1.y = 55;
> P2.x = 321;
> P2.y = 134;
>
> g.drawLine(P1.x, P1.y, P2.x, P2.y);
> }
> }
>
> ------------------------------------------------

Hej Mads

Jeg har nummereret nogle af linierne herover.

Ja, på sin vis har du ret i at P1- og P2-objekterne i linie 1 og 2
ikke er tilgængelige udenfor {}'erne.
Men da det er objektet (i dette tilfælde Appletten), der skal huske P1
og P2, så kan du bare lave den til attributter som x og y allerede er
det.
Så er P1 og P2 defineret inde i den {} som omgiver hele klassen.

I stedet skal du efter linie 3 skrive
lines04 P1, P2;
Og i linie 1 og 2 skal det første 'lines04' fjernes, da typerne på P1
og P2 allerede er givet.

BEMÆRK: Vi har nu lavet en klasse, der indeholder 2 objekter af sig
selv, så vi skal passe på at vi ikke opretter en ny klasse som
opretter 2 nye, og 4 nye, osv. For så er hukommelsen hurtigt brugt.
Men det skulle vi ikke gøre her.


> er den eneste udvej for at placere flere punkter (p3, p4 osv.) ved at lave
> en lang array med x og y.

Ja det er vel det nemmeste, men du kan godt have 27 forskellige
variable i stedet for en array af længde 27.

Jeg har ikke testet det, men hvis der er problemer, så skriv igen,
Torben

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste