php抽象类的例子学习php抽象类的实现方法
时间:2021-07-01 10:21:17
帮助过:15人阅读
//定义一个抽象类 - abstract class Staff
- {
- abstract function hire();
- abstract function fire();
- abstract function promote();
- abstract function demote();
- }
?>
例2,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 );
- ?>
|