Прыярытэт метадаў пры працы з трэйтамі ў ААП у PHP

Калі ў класе і ў трэйце ёсць аднайменны метад, то метад класа перавызначыць метад трэйта:

php<?php
  trait TestTrait
  {
    // Метад з імем method:
    public function method()
    {
      return 'trait';
    }
  }
  
  class TestClass
  {
    use TestTrait;
    
    // Такі ж метад з імем method:
    public function method()
    {
      return 'test';
    }
  }
  
  $test = new TestClass;
  echo $test->method(); // выведзе 'test' - спрацаваў метад самага класа
?>

Калі ж сам клас не мае такога метаду, але ёсць канфлікт імёнаў метадаў трэйта і метадаў бацькоўскага класа, то метады трэйта маюць прыярытэт:

php<?php
  trait TestTrait
  {
    // Метад з імем method:
    public function method()
    {
      return 'trait';
    }
  }
  
  // Бацькоўскі клас:
  class ParentClass
  {
    // Метад з імем method:
    public function method()
    {
      return 'parent';
    }
  }
  
  // Клас наследуе метад method ад бацькоўскага:
  class TestClass extends ParentClass
  {
    use TestTrait;
  }
  
  $test = new TestClass;
  echo $test->method(); // выведзе 'trait', бо трэйт мае прыярытэт
?>