59 lines
987 B
PHP
59 lines
987 B
PHP
<?php
|
|
|
|
namespace bin;
|
|
|
|
/**
|
|
* demo入口父类
|
|
*/
|
|
abstract class Design
|
|
{
|
|
/**
|
|
* 对应设计模式名称
|
|
*
|
|
* @var string
|
|
*/
|
|
public string $designName;
|
|
/**
|
|
* 参考地址
|
|
*
|
|
* @var string
|
|
*/
|
|
public string $designRefUrl;
|
|
|
|
public function __construct()
|
|
{
|
|
$this->designName = $this->setDesignName();
|
|
$this->designRefUrl = $this->setDesignRefUrl();
|
|
}
|
|
|
|
/**
|
|
* 设置设计名称
|
|
*
|
|
* @return string
|
|
*/
|
|
abstract public function setDesignName() : string;
|
|
|
|
/**
|
|
* 设置参考地址
|
|
*
|
|
* @return string
|
|
*/
|
|
abstract public function setDesignRefUrl() : string;
|
|
|
|
/**
|
|
* 入口方法
|
|
*
|
|
* @return mixed
|
|
*/
|
|
abstract public function main();
|
|
|
|
/**
|
|
* 统一返回错误信息
|
|
*
|
|
* @throws \Exception
|
|
*/
|
|
public function __get($name)
|
|
{
|
|
throw new \Exception("$name 未定义");
|
|
}
|
|
} |