public class drawLine extends Applet { int i; public int pointX() { for(i = 10; i < 1000; i++) { } return i; } public void paint(Graphics g) { //g.drawLine(50, 50, 100, 100); g.drawLine(i, i, i, i); }
} Men der sker absolut intet andet. I returneres ikke. Hvad er der galt?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
public class drawLine extends Applet { int punktStartX = 10; int punktStartY = 10;
public void paint(Graphics g) {
for(int i = 10; i <= 1000; i++) { int punkt = i; g.drawLine(punktStartX, punktStartY, punkt, punkt); }
} }
Det jeg tumlede med var, at der ikke blev returneret noget. Men er det rigtigt hvis jeg så antager, at for hente "i" skal jeg ikke hente variablen men hente metoden pointX()? Er det altid sådan? Send et svar så deler vi point.
Ja i det her tilfælde - "problemet" ligger i at for at "i" skal få en værdi så SKAL pointX() kaldes..... Men da "i" er en variable der som instance variable kan den kaldes af alle metoder i instancen.
Men som du nu har lavet funktionen så biver punkt hele tiden en ny værdi. For ikke at skulle lave en ny variable hele tide kunne du med fordele lave metode så ledes.
public void paint(Graphics g) { int punkt = 0; for(int i = 10; i <= 1000; i++) { punkt = i; g.drawLine(punktStartX, punktStartY, punkt, punkt); // eller bare bruge "i" istedet for punkt } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.