php добавляет поле "на лету", не определяя их сначала

Итак, в php у вас нет определения поля в классе, таком как java, это правильно??

в Java вы не можете сказать

public class javac {
    int x;
    int y;
    public javaC() {
     this.z = 3;
    }
 }

но в php вы можете это сказать?

class phpC {
$x;
$y;

public phpC() {
   $this->z = "omg"; 
 }
  }

какова документация php по этому вопросу? и каков правильный термин для такого поведения, я не думаю, что это называется добавлением поля на лету

1 ответов


вы правы.. Вы можете назначить значение неинициализированному свойству в PHP. Java строгий, а PHP-рыхлый goosey:)

техническое название для этого- " перегрузка."Вот документация: http://php.net/manual/en/language.oop5.overloading.php