php 在命名空间重构中扩展 class
php extended class in namespace refactor
我在命名空间内创建了一个 class,它工作得很好,但我认为代码可以做得更好。现在,我必须为 class 中的每个对象使用“/”,我认为这不是最好的做法。
namespace Classes{
use Basic
class Enemy extends Basic{
// Constructor
public function __construct(){
parent::__construct("Enemy", new \Defense("Block", ""), 60, [new \Attack("Punch", 50));
}
}
}
有没有可能做这样的事情?所以我不必为每个对象使用“/”,而只是为 class 本身使用。
namespace Classes{
use Basic
class Enemy extends \Basic{
// Constructor
public function __construct(){
parent::__construct("Enemy", new Defense("Block", ""), 60, [new Attack("Punch", 50));
}
}
}
我试图对 Google 做一些研究,但我唯一能找到的是:https://www.w3schools.com/php/php_namespaces.asp,这里没有解释如何做这样的事情。
我的首选方式是这样的:
<?php
namespace Classes;
use Basic;
use Defense;
use Attack;
class Enemy extends Basic
{
const WHAT_IS_THIS_NUMBER = 60;
const ALSO_THIS_NUMBER = 50;
public function __construct()
{
parent::__construct(
"Enemy",
new Defense("Block", ""),
self::WHAT_IS_THIS_NUMBER,
new Attack("Punch", self::ALSO_THIS_NUMBER)
);
}
}
像往常一样,w3school 提供了丑陋的旧学校代码。
我在命名空间内创建了一个 class,它工作得很好,但我认为代码可以做得更好。现在,我必须为 class 中的每个对象使用“/”,我认为这不是最好的做法。
namespace Classes{
use Basic
class Enemy extends Basic{
// Constructor
public function __construct(){
parent::__construct("Enemy", new \Defense("Block", ""), 60, [new \Attack("Punch", 50));
}
}
}
有没有可能做这样的事情?所以我不必为每个对象使用“/”,而只是为 class 本身使用。
namespace Classes{
use Basic
class Enemy extends \Basic{
// Constructor
public function __construct(){
parent::__construct("Enemy", new Defense("Block", ""), 60, [new Attack("Punch", 50));
}
}
}
我试图对 Google 做一些研究,但我唯一能找到的是:https://www.w3schools.com/php/php_namespaces.asp,这里没有解释如何做这样的事情。
我的首选方式是这样的:
<?php
namespace Classes;
use Basic;
use Defense;
use Attack;
class Enemy extends Basic
{
const WHAT_IS_THIS_NUMBER = 60;
const ALSO_THIS_NUMBER = 50;
public function __construct()
{
parent::__construct(
"Enemy",
new Defense("Block", ""),
self::WHAT_IS_THIS_NUMBER,
new Attack("Punch", self::ALSO_THIS_NUMBER)
);
}
}
像往常一样,w3school 提供了丑陋的旧学校代码。