WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Java- Instanzmethode (http://www.wcm.at/forum/showthread.php?t=186625)

Max Mustermann 02.03.2006 17:42

Java- Instanzmethode
 
Hallo liebes Forum!

Ich höffe ihr könnt mir helfen, denn ich muss für folgenden Klasse für Komplexe Zahlen in Polarform: k=r*(cos(phi)+i*sin(phi)) die Methode mult in eine Instanzmethode umwandeln welche zu einer komplexen Zahl eine andere komplexe Zahl hinzumultipliziert.

public class Complex {
double r, phi;
public Complex (double r, double phi) {
this.r=r; this.phi=phi;
}
static void mult (Complex c1, Complex c2) {
c1.r=c1.r*c2.r;
c1.phi=c1.phi+c2.phi;
}

vielen Dank!! :)

xandl33 02.03.2006 19:37

Re: Java- Instanzmethode
 
Zitat:

Original geschrieben von Max Mustermann
Hallo liebes Forum!

Ich höffe ihr könnt mir helfen, denn ich muss für folgenden Klasse für Komplexe Zahlen in Polarform: k=r*(cos(phi)+i*sin(phi)) die Methode mult in eine Instanzmethode umwandeln welche zu einer komplexen Zahl eine andere komplexe Zahl hinzumultipliziert.

public class Complex {
double r, phi;
public Complex (double r, double phi) {
this.r=r; this.phi=phi;
}
static void mult (Complex c1, Complex c2) {
c1.r=c1.r*c2.r;
c1.phi=c1.phi+c2.phi;
}

vielen Dank!! :)

probier mal folgendes:

public void mult (Complex c2){
this.r=*c2.r;
this.phi=+c2.r;
}

bin mir aber nicht ganz sicher da ich selber erst vor kurzem mit java angefangen habe.
unter www.javabuch.de kannst dir ein javabuch als html runterladen, das normalerweise € 60 .- kostet und auch als nachschlagewerk sehr brauchbar ist.

Max Mustermann 02.03.2006 20:04

vielen dank für deinen beitrag.. ich werd mir mal das buchzu gemüte führen!

Who-T 03.03.2006 05:18

@xsandl33:
stimmt, allerdings ist es *= und nicht =* (gleiches mit +)

@beide
bitte code tags benutzen, macht den code leserlicher


Code:

public class Complex {
  double r, phi;

  public Complex (double r, double phi) {
    this.r=r; this.phi=phi;
  }

  public void mult(Complex c) {
    r *= c.r;
    phi += c.phi;
  }
}


xandl33 03.03.2006 08:09

thx

Max Mustermann 03.03.2006 09:13

vielen Dank!! so hätt ich es jetzt auch gelöst. und aufruf dann mit c1.mult(c2) oder? Worin besteht eigentlich der Vorteil bei der Instanzmethode? Ich spre mir eine zuweisung? Es wird kürzer? Und gibt es eine verständliche Definition von Instanzmethode.. auch google hat mich nicht schlau gemacht. Ich würd gerne in eigenen Worten wieder geben was eine Instanzmethode ist, und nicht eine Def. auswendig lernen.

xandl33 03.03.2006 15:39

man verwendet dann eine instanzmethode wenn die methode auswirkungen auf die instanz (--> die Variablen ) eines objektes hat.

eine klassenmethode verwendest du dann wenn die methode sich auf klassenvariablen auswirkt bzw. du eine klasse hast von der es keine instanz also ein objekt geben wird (--> abstrakte klasse).

ich hoffe die erklärung stimmt so halbswegs. was du wann einsetzt ist im prinzip deine sache bzw. kommst du bei der entwicklung deiner programme mit der zeit drauf was wo sinnvoller ist.

es ist so wie überall aller anfang ist schwer ( leider )


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag