Twój kod przecież działa...
class formuly
{
public function oblicz($a, $b)
{
return $a-$b;
}
}
class kwadrat extends formuly
{
var $a = 5;
var $b = 3;
public function obliczKwadrat()
{
echo $this -> oblicz($this -> a, $this -> b); //to nie działa, ale coś takiego chcę mieć }
}
$k = new kwadrat;
$k->obliczKwadrat();
Domyślam się jednak co chcesz osiągnąć. Poprawna implementacja:
abstract class formuly
{
abstract public function oblicz();
}
class kwadrat extends formuly
{
var $a = 5;
var $b = 3;
public function oblicz()
{
return $this -> a - $this -> b;
}
}
$k = new kwadrat;
$a i $b najlepiej przekazać poprzez konstruktor.