Explication détaillée de la méthode d'implémentation de la classe abstraite php

伊谢尔伦
Libérer: 2023-03-12 12:46:02
original
2042 Les gens l'ont consulté

Il existe deux exemples de

Classe abstraite en php, l'un est simple et l'autre est plus complexe. Ce sont de bons exemples pour apprendre les classes abstraites PHP. Les amis dans le besoin peuvent s'y référer.

Classe abstraite php

<?php
//定义一个抽象类
  abstract class Staff
   {
      abstract function hire();
      abstract function fire();
      abstract function promote();
      abstract function demote();
   }
?>
Copier après la connexion

Exemple de classe abstraite php

<?php
class Employee {
    private $title;
    private $lastName;
    private $firstName;
    protected $salary;
    private $ratio = 0; 
    public function construct($title, $firstName, $mainName, $salary ) { 
        $this->title     = $title;
        $this->firstName = $firstName;
        $this->lastName  = $mainName;
        $this->salary     = $salary;
    }
    public function firstName() {
        return $this->firstName;
    }
    public function getlastName() {
        return $this->lastName;
    }
    public function setRatio( $num ) {
        $this->ratio=$num;
    }
    public function getRatio() {
        return $this->ratio;
    }
    
    public function getTitle() {
        return $this->title;
    }
    public function getSalary() {
        return ($this->salary - $this->ratio);
    }
    public function getFullName() {
        return "{$this->firstName}" . " {$this->lastName}";
    }
    function getSummaryLine() {
        $base  = "$this->title ( $this->lastName, ";
        $base .= "$this->firstName )"; 
        return $base;
    }
}
//定义抽象类
abstract class EmployeeWriter {
    abstract static function write( Employee $shopProduct );
}
class TextEmployeeWriter extends EmployeeWriter {
    static function write( Employee $shopEmployee ) {
        $str  = "{$shopEmployee->getTitle()}: ";   
        $str .= $shopEmployee->getFullName();
        $str .= " ({$shopEmployee->getSalary()})\n";
        print $str;
    }
}
$developer1 = new Employee("A", "A1", "A2", 5.99 );
TextEmployeeWriter::write( $developer1 );
?>
Copier après la connexion

 




Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal