class Employee {
protected $name;
protected $age;
protected $salary;
public function __construct($name, $age, $salary) {
$this->name = $name;
$this->age = $age;
$this->salary = $salary;
}
public function getName() {
return $this->name;
}
public function getAge() {
return $this->age;
}
public function getSalary() {
return $this->salary;
}
public function setName($name) {
$this->name = $name;
}
public function setAge($age) {
$this->age = $age;
}
public function setSalary($salary) {
$this->salary = $salary;
}
}
class Driver extends Employee {
private $drivingExperience;
private $drivingCategory;
public function __construct($name, $age, $salary, $drivingExperience, $drivingCategory) {
parent::__construct($name, $age, $salary);
$this->drivingExperience = $drivingExperience;
$this->drivingCategory = $drivingCategory;
}
public function getDrivingExperience() {
return $this->drivingExperience;
}
public function getDrivingCategory() {
return $this->drivingCategory;
}
public function setDrivingExperience($drivingExperience) {
$this->drivingExperience = $drivingExperience;
}
public function setDrivingCategory($drivingCategory) {
$this->drivingCategory = $drivingCategory;
}
}
Объяснение кода:
- Создаем базовый класс Employee, который содержит свойства name, age, salary, а также геттеры и сеттеры для доступа к этим свойствам.
- Создаем класс Driver, который наследует от класса Employee с помощью ключевого слова extends.
- В классе Driver добавляем два новых свойства: drivingExperience (водительский стаж) и drivingCategory (категория вождения).
- В конструкторе класса Driver вызываем конструктор родительского класса Employee с помощью parent::__construct() и передаем ему параметры name, age, salary. Затем инициализируем новые свойства drivingExperience и drivingCategory.
- Добавляем геттеры и сеттеры для свойств drivingExperience и drivingCategory.
Теперь можно создавать объекты класса Driver и работать с ними. Например:
$driver = new Driver("John Doe", 30, 2500, 5, "B");
echo $driver->getName(); // Выведет "John Doe"
echo $driver->getDrivingExperience(); // Выведет 5
$driver->setDrivingCategory("C");
echo $driver->getDrivingCategory(); // Выведет "C"
Формат сдачи: Код на PHP