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 提供了丑陋的旧学校代码。