Показать сообщение отдельно
  #1 (permalink)  
Старый 21.01.2019, 23:09
Аспирант
Отправить личное сообщение для garrip91 Посмотреть профиль Найти все сообщения от garrip91
 
Регистрация: 07.10.2018
Сообщений: 75

Notice: Undefined property (ООП)
Составил такой код:

interface Say {
		public function say();
	}
	
	abstract class Animal implements Say {
		
		private $name;
		private $nickname;
		private $coloring;
		private $breed;
		private $age;
		
		public function __construct($name, $nickname, $coloring, $breed, $age) {
			$this->name = $name;
			$this->nickname = $nickname;
			$this->coloring = $coloring;
			$this->breed = $breed;
			$this->age = $age;
		}
		
		public function getName() {
			return $this->name;
			return $this->nickname;
			return $this->coloring;
			return $this->breed;
			return $this->age;
		}
		
	}
	
	class Dog extends Animal {
		
		public function __construct($name, $nickname, $coloring, $breed, $age) {
			parent:: __construct($name, $nickname, $coloring, $breed, $age);
		}
		
		public function say() {
			echo "Я - ".$this->getName()." ".$this->coloring." окраса, "."породы - ".$this->breed.", зовут меня - ".$this->nickname.", мне сейчас ".$this->age;
		}
	
	}
	
	class Cat extends Animal {
		
		public function __construct($name, $nickname, $coloring, $breed, $age) {
			parent:: __construct($name, $nickname, $coloring, $breed, $age);
		}
		
		public function say() {
			echo "Я - ".$this->getName()." ".$this->coloring." окраса, "."породы - ".$this->breed.", зовут меня - ".$this->nickname.", мне сейчас ".$this->age;
		}
		
	}
	
	$dog = new Dog('собака', 'Рекс', 'белого', 'Немец', '5 лет'); 
	$dog->say();
	
	echo "<br><br>";
	
	$cat = new Cat('кошка', 'Маркиза', 'пятнистого', 'Сфинкс', '2 года'); 
	$cat->say();




Данный код выдаёт ошибки следующего содержания:

1. " Notice: Undefined property: Dog::$coloring in C:\xampp\htdocs\www\beonmax.com\PHP\Object_oriente d_programming\Homework_for_video_lesson_68_syntax. php on line 41 ";
2. " Notice: Undefined property: Dog::$breed in C:\xampp\htdocs\www\beonmax.com\PHP\Object_oriente d_programming\Homework_for_video_lesson_68_syntax. php on line 41 "
... и т.д...

В чём моя ошибка? Вроде всё правильно делаю.

Последний раз редактировалось garrip91, 21.01.2019 в 23:13. Причина: Некоторые исправления в коде!
Ответить с цитированием