On Mon, 20 Jan 2003 10:14:20 +0100, Ole wrote:
> Er der en eller flere der gider forklare mig, hvordan man "rigtigt"
> laver, så klasser kan snakke samme på tværs af hinanden?? For jeg fatter
> ikke en hat af hvordan...
I nedenstående eksempel kalder objektet af klassen OtherClass en metode i
objektet af klassen Connect. Dette sker ved at den er blevet oprettet med
en reference til objektet og dermed kan kalde metoder i det andet objekt.
public class Connect {
// Private string for Connect
private String myString;
public Connect( String myString ) {
this.myString = myString;
}
// Return string
public String getString() {
return myString;
}
// Some main method
public static void main( String args[] ) {
// Create instance of Connect with
// string "TEST"
Connect con = new Connect( "TEST" );
// Create instance of OtherClass with
// a reference to con
OtherClass oth = new OtherClass( con );
// print out the string from paret to con
oth.printParent();
}
}
// This class uses a reference to a Connect object to
// print out its string
class OtherClass {
Connect parent;
// Create an instance of OtherClass with a reference
// to a Connect object
public OtherClass( Connect par ) {
parent = par;
}
// Use the reference to print out the message
public void printParent() {
System.out.println( parent.getString() );
}
}
> Hvor stort skal et program være før det kan svare sig at spiltte det op
> i flere klasser og hvad er fordelen helt præsist? Jeg har ikke rigtig
> fundet den endnu ;)
Det er meget sjældet, at jeg laver et program, der ikke bruger flere
klasser. Når det endelig sker er det oftest fordi jeg lige skal teste en
eller anden lille ting. Fordelene er blandt andet, at det hjælper på
overskueligheden, gør det lettere at genbruge kode, dine klasser bliver
ordentligt indkapslet...
Måske du skulle kigge lidt på en af nedenstående bøger (eller dem alle
), da det virker som om du har sprunget en del af det indledende stof
over og er hoppet direkte til GUI
.
Linux - Friheden til at programmere i Java
http://www.sslug.dk/linuxbog/?b=java
Baseret på Objektorienteret programmering i Java (2. udgave)
http://www.javabog.dk/
Thinking in Java, 2nd Edition
http://www.mindview.net/Books/TIJ/
--
Mikkel Bundgaard
Student at IT University of Copenhagen
Codito, Ergo Sum