时隔一年,终究感觉自己都快要废掉了一直在写代码写代码,从来没有想过代码的编程方式和思想,是时候给自己充电了,十年磨一剑,我比较笨就当四年才开始磨剑吧
在后面的日子里面我将恶补我的面向对象,我现在具备的就是自己的业务逻辑,但是自己编程的思想一塌糊涂
今天学习的内容:类常量,静态属性,静态方法,继承,复写。
首先说的是类常量设置
假设这样的一个应用场景,我们在要给用户赠送积分,发送消息,我们可以抛开来看
1.我们会有默认积分
2.会有积分倍数(偶尔会有)
3.实际增送积分
4.发送消息的默认模板内容
那这里可以看出来默认积分是可以被设置成为一个常量,下面的模块就是我编写的一个默认发送消息的类,反正是最基础的,我也不做多得阐述,这就是给自己学习做笔记的。
class Message {
const INTEGRAL = 10;
protected static $message = '恭喜你获得积分';
protected static $multiple = 3;
public function getIntegral(){
return self::INTEGRAL;
}
public function sendMessage(){
$message_user = self::$message.bcmul($this -> getIntegral(),self::getMultiple());
return $message_user;
}
public static function getMultiple(){
return self::$multiple;
}
}
然后我们在实际调用的时候会发现,我们在平时的时候需要使用默认积分,而在我们新年的时候需要给用户更多的积分,那怎么办不能再写一次吧,就要用到类的复写了,下面的代码就是一个简单的东西了。
include_once 'Message.php';
class Now extends Message{
function generalMessage(){
return $this -> sendMessage();
}
}
class NewYear extends Message{
function specialMessage(){
return $this -> sendMessage();
}
public function getIntegral()
{
return 100;
}
}
echo '这是当我在普通的场景的时候需要这样来调用:';
echo "</br>";
echo (new Now) ->generalMessage();
echo "<hr/>";
echo '这是当我在特殊的场景的时候需要这样来调用:';
echo "</br>";
echo (new NewYear) ->specialMessage();
下面就是需要展示一下具体的效果了
这是当我在普通的场景的时候需要这样来调用:
恭喜你获得积分30
这是当我在特殊的场景的时候需要这样来调用:
恭喜你获得积分300
说到这里真的感觉自己弱鸡啊,一开始的入门语言,一直没有勇气去深究,还是自己太懒了,时间给抓回来吧。搞就是了
网友评论