absolute Beginner @ Profi!

  • #1
T

tschiria

Aktives Mitglied
Themenersteller
Dabei seit
06.07.2004
Beiträge
35
Reaktionspunkte
0
Hallo an alle Profis,

...nur wer nicht fragt, bleibt doof...

Ich muss eine Frage posten, die die meisten von euch sicher mit links beantworten und die hoffentlich nicht allzu sehr die Augen verdrehen lässt...
ich lerne grade erst php...

Meine Aufgabe:
eine Klasse erzeugen, die zwei Zahlen als Eigenschaften speichert und diese Klasse um eine Methode calculate () erweitern, die diese beiden Zahlen im Browser ausgibt.

Mein Lösungsansatz:
Code:
<?php
class baseCalc {
  	var $name;
	var $name2;

  function baseCalc( $name=dig ) {
    $this->name = $name;
  }

  function setName( $n ) {
    $this->name = $n;
  }

  function getName() {
    return $this->name;
  }
}

$baseCalc = new baseCalc(28);
print $baseCalc->getName();
print <br \>;
$baseCalc = new baseCalc(03);
print $baseCalc->getName();

?>

Dies klappt auch soweit, wenngleich ich doch den Eindruck habe, dass mein Scripting sehr umständlich ist?
Ist es vielleicht eleganter zu lösen?

Nun geht es aber weiter und hier habe ich noch nicht mal einen halbwegs akzeptablen Weg gefunden, der ohne Fehler auskäme:

Eine Klasse addCalc soll nun erzeugt werden, die ihre Funktionalität von der Basisklasse baseCalc erbt. Die calculate ()-Methode soll überschrieben werden, sodass die Summe der Eigenschaften im Browser ausgegeben wird.


Ich danke Euch vielmals.

Gruß,
tschiria

* Code-Tags eingefügt *
 
  • #2
Wozu hast du die Funktion setName, wenn du sie nicht nutzt ;)
Code:
<?php
.....
.....
$baseCalc = new baseCalc(28);
print $baseCalc->getName();

$baseCalc->setName(3);
print $baseCalc->getName();
?>

Näheres zur Vererbung =>
 
  • #3
danke, conny, für deine antwort,
aber leider hilft mir weder gemüse noch spinat bei der addition...
mir ist nicht wirklich klar, wie ich die beiden zahlen in die neue methode integrieren kann...

auch ist ja eigentlich noch nicht einmal die erste lösung richtig, denn die methode calculate () konnte ich auch nicht einbinden???

vielen dank und gruß,
tschiria
 
  • #4
Hi

Code:
<?php
class baseCalc {
  	var $a;
    var $b;

  function baseCalc($a, $b) {
    $this->a = $a;
    $this->b = $b;
  }

  function calculate() {
    print $a $b;
  }

}
$baseCalc = new baseCalc(28, 03);
$baseCalc->calculate();
print <br \>;
?>

So hätte ich die Aufgabe verstanden, dann sollte auch der zweite Teil der Aufgabe einfacher klappen.

Gruß, Michael
 
  • #5
yipeeh,

vielen dank, michael, deine antwort hat mich endlich auf die richtige fährte gebracht!

gruß,
tschiria
 
Thema:

absolute Beginner @ Profi!

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben