新手请教下,类属性能初始化为一个其他类的实例对象吗
新手请问下,类属性能初始化为一个其他类的实例对象吗
如果行的话,那语法是什么样的?
------解决方案--------------------
class A {}<br />class B {<br /> public $o;<br /> function __construct() {<br /> $this->o = new A;<br /> }<br />}<br />$p = new B;<br />print_r($p);
B Object<br />(<br /> [o] => A Object<br /> (<br /> )<br /><br />)<br /><br />
------解决方案--------------------
你的程序写错了。
1.第9行,你要显示$parameter属性,应是 echo $this->parameter; 而不是echo $parameter;
2.第15行 $test = new test("test"); 这个赋值并不会赋值到 private static $test,所以第20行的self::$test 是等于null
因此15行需要改为 self::$test = new test("test");
修改后的程序如下:
<br /><?php<br /> class test{<br /> private $parameter;<br /> public function __construct($parameter){<br /> $this->parameter=$parameter;<br /> echo "test类构造方法被调用<br/>";<br /> }<br /> public function getParameter(){<br /> echo $this->parameter; // 修改这里<br /> }<br /> }<br /> class test1{<br /> private static $test=null;<br /> public function __construct(){<br /> self::$test = new test("test"); // 修改这里<br /> echo "test1类构造方法被调用<br/>";<br /> }<br /> public static function show(){<br /> echo "show()方法被调用";<br /> self::$test->getParameter();//<br /> }<br /> }<br /> $test1 = new test1();<br /> test1::show();<br />?><br />
test类构造方法被调用
test1类构造方法被调用
show()方法被调用test
最后不得不说,自己有问题应该开贴,不应该在别人贴里面问。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Huawei déploie la version logicielle 5.0.0.100 (C00M01) pour les montres intelligentes Watch GT 5 et Watch GT 5 Pro dans le monde entier. Ces deux montres intelligentes ont récemment été lancées en Europe, le modèle standard étant le modèle le moins cher de l’entreprise. Cette harmonie

Katsuhiro Harada, le réalisateur de la série Tekken, a un jour sérieusement tenté d'impliquer le colonel Sanders dans le jeu de combat emblématique. Dans une interview avec TheGamer, Harada a révélé qu'il avait présenté l'idée à KFC Japon, dans l'espoir d'ajouter la légende de la restauration rapide comme g

Plus tôt en septembre 2024, le chargeur Zolo 140 W d'Anker a fait l'objet d'une fuite, et c'était un gros problème puisqu'il s'agissait du tout premier chargeur mural doté d'un écran de l'entreprise. Maintenant, une nouvelle vidéo de déballage de Xiao Li TV sur YouTube nous donne un aperçu direct du salut.

Tesla déploie la dernière version 12.5.5 de conduite entièrement autonome (supervisée) et avec elle vient enfin l'option Cybertruck FSD promise, dix mois après la mise en vente du pick-up avec la fonctionnalité incluse dans le prix de finition de la série Foundation. F

Xiaomi lancera prochainement le chauffe-huile Mijia Graphene en Chine. La société a récemment mené avec succès une campagne de financement participatif pour le produit de maison intelligente, hébergé sur sa plateforme Youpin. Selon la page, l'appareil a déjà commencé à être expédié vers

Garmin termine le mois avec une nouvelle série de mises à jour stables pour ses dernières montres intelligentes haut de gamme. Pour récapituler, la société a publié le logiciel système 11.64 pour lutter contre l'épuisement élevé de la batterie des Enduro 3, Fenix E et Fenix 8 (prix actuel : 1 099,99 $ sur Amazon).

Le lancement du très attendu pliable « Special Edition » de Samsung a pris une autre tournure. Ces dernières semaines, les rumeurs concernant le soi-disant Galaxy Z Fold Special Edition sont devenues plutôt silencieuses. Au lieu de cela, l’accent s’est déplacé vers la série Galaxy S25, y compris

Avec une histoire de plus d'une décennie, Manjaro est considérée comme l'une des distributions Linux les plus conviviales, adaptée aussi bien aux débutants qu'aux utilisateurs expérimentés, étant facile à installer et à utiliser. Principalement développée en Autriche, en Allemagne et en France, cette distribution basée sur Arch
