23.07.2013 Views

transparenterne - Objektorienteret programmering i Java

transparenterne - Objektorienteret programmering i Java

transparenterne - Objektorienteret programmering i Java

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Eksempel − Linietegning<br />

import java.applet.Applet;<br />

import java.awt.*;<br />

import java.awt.event.*;<br />

public class LinietegningIndre extends Applet<br />

{ private Point trykpunkt = null;<br />

private Point slippunkt = null;<br />

public void init()<br />

{ Linielytter lytter = new Linielytter();<br />

this.addMouseListener(lytter);<br />

}<br />

// En indre klasse<br />

class Linielytter implements MouseListener<br />

{ public void mousePressed (MouseEvent event)<br />

{ // sæt den ydre klasses variabel<br />

trykpunkt = event.getPoint();<br />

}<br />

public void mouseReleased (MouseEvent event)<br />

{<br />

slippunkt = event.getPoint();<br />

repaint();<br />

// kald den ydre klasses metode<br />

}<br />

// kræves af MouseListener:<br />

public void mouseClicked (MouseEvent event) {}<br />

public void mouseEntered (MouseEvent event) {}<br />

public void mouseExited (MouseEvent event) {}<br />

} // slut på indre klasse<br />

// en metode i den ydre klasse<br />

public void paint (Graphics g)<br />

{ if (trykpunkt != null && slippunkt != null)<br />

g.drawLine (trykpunkt.x, trykpunkt.y,<br />

slippunkt.x, slippunkt.y);<br />

}<br />

}<br />

Læg mærke til at den indre klasse uden videre har adgang til den ydre<br />

klasses variabler og metoder.<br />

Lokale klasser<br />

En lokal klasse er defineret i en blok programkode, ligesom en lokal<br />

variabel.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!