php:特性优先级规则可用于属性吗?

问题描述 投票:2回答:1

特征优先级规则可以用于属性吗?我的初步研究没有发现任何问题,测试也没有结果。...

trait ReuseThis{
   public  $Dependency_Property;
   public function mutateProperty(){
      //...long method
   }
}
trait privatePropInstead{
     private $Dependency_Property;
}

class precedence_test{
     //would like to reuse long methods of ReuseThis, but with private properties
        use ReuseThis,privatePropertyInstead{
            //all of these fail 
           //privatePropInstead->Dependency_Property insteadof ReuseThis;
           //privatePropInstead::$Dependency_Property insteadof ReuseThis;
           //privatePropInstead::Dependency_Property insteadof ReuseThis;


        }
}
php traits
1个回答
0
投票

[如果是财产,在哪里声明都没有关系,重要的是财产的价值。

value problem可以并且应该通过将值分配给属性来解决,并且应该在public function __construct()中完成。这是此功能的全部目的。

PS

该值分配在static属性中无法正常工作,但是我强烈劝阻所有人不要使用static属性。只需将另一个类用作单例……好吧,这是一个讨论其他问题的话题。

© www.soinside.com 2019 - 2024. All rights reserved.