2
PHP中有一種方法可以讓一個類只允許被另一個類實例化嗎?例如:PHP定義一個只允許被另一個類實例化的類
<?php
class Graph {
private $nodes;
public function __construct() {
$this->nodes = array();
}
public function add_node() {
$this->nodes[] = new Node();
}
}
class Node {
public function __construct() {
}
}
?>
在我的例子中,我想阻止訪問直接調用new Node()
。只有Node
應該來自Graph
類。
謝謝。
這樣做的原因是什麼? –
這是毫無意義的。我可以看到用例是你必須確定你的節點鏈接到一個圖表,但爲什麼有什麼不能訪問它?你想在java中創建「私有」類。但在PHP類中沒有可見性,就像在C++中一樣。 – artragis