0

特定のクラスのみがそのインスタンスを作成できるように、パブリック クラスのコンストラクターへのアクセスを制限したいが、すべてのクラスがそのインスタンスを使用できるとします。

Java では、これをアーカイブする 2 つの方法を知っています。

  1. コンストラクターでpublic static内部クラスをprivate作成し、外部クラスでインスタンス化します。
  2. クラス コンストラクターをパッケージ プライベートにします (同じパッケージ内のすべてのクラスへのアクセスを制限します)。

ただし、PHP には内部クラスはなく、名前空間 (パッケージに近い) には独自のアクセス修飾子がありません (つまり、パッケージ プライベートはありません)。

では、クラス コンストラクターへのアクセスを保護するにはどうすればよいでしょうか。

4

0 に答える 0